<?php
function stripSpecial($str){
$str = iconv('', 'utf-8', $str);
$str = htmlspecialchars($str);
//$str = '<![CDATA[' . $str . ']]>';
return $str;
}
function setXmldata($loc, $lastmod, $changefreq, $priority){
$loc = stripSpecial($loc);
$lastmod = stripSpecial($lastmod);
$changefreq = stripSpecial($changefreq);
$priority = stripSpecial($priority);
$arr_url = array('loc'=>$loc,'lastmod'=>$lastmod,'changefreq'=>$changefreq,'priority'=>$priority);
return $arr_url;
}
$doc = new DOMDocument();
$doc->formatOutput = true;
$r = $doc->createElement('root');
$doc->appendChild($r);
$date = date(c,time());
$xml_data = array();
define(URL, 'http://test.com');
$xml_data[] = setXmldata(URL, $date, 'always', '1.0');
$xml_data[] = setXmldata(URL."content/page1", $date, 'daily', '0.8');
$xml_data[] = setXmldata(URL."content/page2", $date, 'daily', '0.8');
$xml_data[] = setXmldata(URL."main/search?search_type=1", $date, 'daily', '0.8');
$xml_data[] = setXmldata(URL."main/search?search_type=2", $date, 'daily', '0.8');
$xml_data[] = setXmldata(URL."main/search?search_type=3", $date, 'daily', '0.8');
$xml_data[] = setXmldata(URL."main/search?search_type=4", $date, 'daily', '0.8');
$xml_data[] = setXmldata(URL."main/search?search_type=5", $date, 'daily', '0.8');
$users = array(
array('id'=>1,'username'=>'test1'),array('id'=>2,'username'=>'test2'),array('id'=>3,'username'=>'test3')
);
foreach ($users as $u){
$xml_data[] = setXmldata(URL."user/profile/".$u['username'], $date, 'daily', '0.8');
}
$urlset = $doc->createElement('urlset');
$doc->appendChild($urlset);
foreach( $xml_data as $xdata ){
$url = $doc->createElement('url');
$loc = $doc->createElement("loc");
$loc->appendChild($doc->createTextNode($xdata['loc']));
$url->appendChild($loc);
$lastmod = $doc->createElement("lastmod");
$lastmod->appendChild($doc->createTextNode($xdata['lastmod']));
$url->appendChild($lastmod);
$changefreq = $doc->createElement("changefreq");
$changefreq->appendChild($doc->createTextNode($xdata['changefreq']));
$url->appendChild($changefreq);
$priority = $doc->createElement("priority");
$priority->appendChild($doc->createTextNode($xdata['priority']));
$url->appendChild($priority);
$urlset->appendChild($url);
}
$r->appendChild($urlset);
//echo $doc->saveXML();
$doc->save("sitemap.xml");
?>
php生成xml文件
最新推荐文章于 2024-05-27 00:54:09 发布