您好,欢迎访问一九零五行业门户网

PHP遍历指定文件夹内的XML文件,100分啊,100分

xml文件格式为:
130112001.jpg 130112001.3gp
一个xml文件相当于一条数据。
由于我初学php不久,求翻译下面的代码。。。
指定文件夹目录路径:d:\001\1003(此文件夹下有多个xml文件)遍历开始(读取4个xml文件,满足后停止遍历)读取一个xml文件内容$title=xml内的title$img=xml内的image$path=此xml文件的路径把这3个变量输出到页面遍历结束
等于读取了4条数据,每条数据包含title,img,path这3个变量的值。
回复讨论(解决方案) 看到那个头像脑子一下子清零了……微臣告退……
看到那个头像脑子一下子清零了……微臣告退……
帮我解决下,马上就还头像。
$doc = new domdocument();$doc->load (a.xml);$tmp = $doc->getelementsbytagname('template');foreach($tmp as $t){ echo 'title:'.$t->getelementsbytagname('title')->item(0)->nodevalue.
; echo 'image:'.$t->getelementsbytagname('image')->item(0)->nodevalue.
; echo 'intro:'.$t->getelementsbytagname('intro')->item(0)->nodevalue.
; echo 'mediapath:'.$t->getelementsbytagname('mediapath')->item(0)->nodevalue.
;}
翻手册,opendir遍历,domdocument解析xml
$i == 0foreach (glob(d:\\001\\1003\\*.xml) as $filename) { if ($i >3) break; 读取$filename…… $i++;}
读取$filename 的部分参考 http://bbs.csdn.net/topics/390354196
懒得写了
呃,居然写了双等号……
$dir='d:\001\1003';function readxml($dir,&$arr){ if($handle=opendir($dir)){ while(false!==($file=readdir($handle))){ $sub_dir=$dir.directory_separator.$file; if(is_dir($sub_dir)&&$file!='.'&&$file!='..'){ readxml($sub_dir,$arr); }elseif(preg_match('/\.xml$/',$file)){ if(count($arr)>3){ return false; } $arr[]=$sub_dir; } } }}readxml($dir,$arr);foreach($arr as $x){ $doc = new domdocument(); $doc->load ($x); $tmp = $doc->getelementsbytagname('template'); foreach($tmp as $t){ echo 'title:'.$t->getelementsbytagname('title')->item(0)->nodevalue.
; echo 'image:'.$t->getelementsbytagname('image')->item(0)->nodevalue.
; echo 'intro:'.$t->getelementsbytagname('intro')->item(0)->nodevalue.
; echo 'mediapath:'.$t->getelementsbytagname('mediapath')->item(0)->nodevalue.
; } echo --------------------------------------
;}
给分来!!!!
还真是清零了,晕
foreach (glob(d:\\001\\1003\\*.xml) as $key => $filename)
用$key就可以判断读了四个停止遍历了,不需要$i
php code?123456$i == 0foreach (glob(d:\\001\\1003\\*.xml) as $filename) {    if ($i >3) break;    读取$filename……    $i++;}
读取$filename 的部分参考 http://bbs.csdn.net/topics/390354196
懒得写了……
php code?1234567891011121314151617181920212223242526272829$dir='d:\001\1003';function readxml($dir,&$arr){    if($handle=opendir($dir)){        while(false!==($file=readdir($handle)))……
谢谢了兄弟,有空聊来这给这段代码加几句注释,我好学习,呵呵。
这里也有一个php遍历文件夹的函数
你可以参考一下: http://www.bacysoft.cn/thread-77-1-1.html
其它类似信息

推荐信息