Heim >Backend-Entwicklung >PHP-Tutorial > PHP遍历指定文件夹内的XML资料,100分啊100分
PHP遍历指定文件夹内的XML文件,100分啊,100分。
XML文件格式为:
<br /> <?xml version="1.0" encoding="UTF-8"?><br /> <template><br /> <title><![CDATA[《克鲁德一家》预告]]></title> <br /> <image>130112001.jpg</image> <br /> <intro><![CDATA[《克鲁德一家》预告]]></intro> <br /> <mediapath>130112001.3gp</mediapath><br /> </template><br />
<br /> <br /> 指定文件夹目录路径:D:\001\1003(此文件夹下有多个XML文件)<br /> <br /> 遍历开始(读取4个XML文件,满足后停止遍历)<br /> <br /> 读取一个XML文件内容<br /> <br /> $title=XML内的title<br /> <br /> $img=XML内的image<br /> <br /> $path=此XML文件的路径<br /> <br /> 把这3个变量输出到页面<br /> <br /> 遍历结束<br /> <br />
$i == 0<br /> foreach (glob("D:\\001\\1003\\*.xml") as $filename) {<br /> if ($i >3) break;<br /> 读取$filename……<br /> $i++;<br /> }
<br /> $dir='D:\001\1003';<br /> function readxml($dir,&$arr){<br /> if($handle=opendir($dir)){<br /> while(false!==($file=readdir($handle))){<br /> $sub_dir=$dir.DIRECTORY_SEPARATOR.$file;<br /> if(is_dir($sub_dir)&&$file!='.'&&$file!='..'){<br /> readxml($sub_dir,$arr);<br /> }elseif(preg_match('/\.xml$/',$file)){<br /> if(count($arr)>3){<br /> return false;<br /> }<br /> $arr[]=$sub_dir;<br /> }<br /> }<br /> }<br /> }<br /> readxml($dir,$arr);<br /> foreach($arr as $x){<br /> $doc = new DOMDocument();<br /> $doc->load ($x);<br /> $tmp = $doc->getElementsByTagName('template');<br /> foreach($tmp as $t){<br /> Echo 'title:'.$t->getElementsByTagName('title')->item(0)->nodeValue."<br>";<br /> Echo 'image:'.$t->getElementsByTagName('image')->item(0)->nodeValue."<br>";<br /> Echo 'intro:'.$t->getElementsByTagName('intro')->item(0)->nodeValue."<br>";<br /> Echo 'mediapath:'.$t->getElementsByTagName('mediapath')->item(0)->nodeValue."<br>";<br /> }<br /> Echo "<p>--------------------------------------</p>";<br /> }<br />