Как вывести xml с помощью php
"Как вывести xml с помощью php". Можно ли выводить xml посредством php.
Выводим xml с помощью php.
- Зачем выводить xml с помощью php?
- Код для вывода xml с помощью php.
- Пример кода для вывода xml с помощью php.
Зачем выводить xml с помощью php?
Начнем с некого предисловия... "Зачем выводить xml с помощью php" - в частности: зачем мне понадобилось "выводить xml с помощью php".
Вообще, мой sitemap.xml существует физически и пересоздается при обновлении контента, либо удалении контента.
Тут у меня возникла необходимость автоматического создания "xml"(физический файлов), но оказалось, что они так быстро размножаются и начали ... на данный момент составлять половину веса существующего контента написанного за 10 лет... и тут я подумал, что это довольно глупо(в смысле эта ситуация)!
Почему бы не создавать и выводить xml с помощью php?
Нужно сделать программу "php", которая будет выводить все эти "xml" файлы программно и будут занимать 0байт!
Создадим программу для вывода xml с помощью php!
Код для вывода xml с помощью php.
Не буду гадать, как у вас создается sitemap.xml, я рассмотрел несколько вариантов .
У меня есть вот такой массив со ссылками(оставил 5 ячеек):
Array
(
[0] => https://jsphp.ru/pochemu_ne_sdelayu_sayt_na_ucoz.html
[1] => https://jsphp.ru/onkeydown.html
[2] => https://jsphp.ru/onkeyup.html
[3] => https://jsphp.ru/zachem_nujnyi_byili_saytyi_na_narode.html
[4] => https://jsphp.ru/kak_menya_ne_vzyali_v_rsya.html
)
Далее вам понадобится:
Открываем теги php.
<?
?>
Отправляем заголовки xml:
Дату ставим сегодняшнюю с помощью date:
Далее в цикле for перебираем весь массив и выводим с помощью echo
echo '<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">';
for($i=0; $i<count($array); $i++)
{
echo '<url>
<loc>'. $array[$i] .'</loc>
<lastmod>'. date('d-m-Y') .'</lastmod>
<changefreq>weekly</changefreq>
<priority>1.0</priority>
</url>';
}
echo'</urlset>' ;
Пример кода для вывода xml с помощью php.
Соберем весь код "вывода xml с помощью php":
<?
header('Content-type: text/xml');
//$array = 'Мой массив формируется автоматически.';
//его можно создавать из базы данных
echo '<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">';
for($i=0; $i<count($array); $i++)
{
echo '<url>
<loc>'. $array[$i] .'</loc>
<lastmod>'. date('d-m-Y') .'</lastmod>
<changefreq>weekly</changefreq>
<priority>1.0</priority>
</url>';
}
echo'</urlset>' ;
