以下我们是直接引用的一个url地址作为xml的接收对象,实际情况中你也许自己有自己的xml,只需要先将xml转化成字符串,然后引用类来进行处理就可以了。
以下是xml文件
<?xml version="1.0" encoding="utf-8" ?>
- <docs>
- <persondetail>
- <personname>
- <![CDATA[ "张先生 研发部经理.."
]]>
</personname>
- <!-- 人才姓名
-->
- <personurl>
- <![CDATA[ "http%3A%2F%2Fkg.dqjob88.com%2FmyNew%2Fresume%2FResumePreview.php%3FResumeId%3Djob10011112337008%26gjTag%3D0%26r%3Daca9bac124"
]]>
</personurl>
- <!-- 人才的链接(需转码)
-->
- <personjob>
- <![CDATA[ "研发部经理/技术主管"
]]>
</personjob>
- <!-- 意向职位
-->
- <personsex>
- <![CDATA[ "女"
]]>
</personsex>
- <!-- 性别
-->
- <personzy>
- <![CDATA[ "电气自动化"
]]>
</personzy>
- <!-- 专业
-->
- <personschool>
- <![CDATA[ "重庆科技学院"
]]>
</personschool>
- <!-- 毕业学校
-->
- <personupdate>
- <![CDATA[ "2012-03-23"
]]>
</personupdate>
- <!-- 更新日期
-->
</persondetail>
- <persondetail>
- <personname>
- <![CDATA[ "赵先生 高中 总工.."
]]>
</personname>
- <!-- 人才姓名
-->
- <personurl>
- <![CDATA[ "http%3A%2F%2Fkg.dqjob88.com%2FmyNew%2Fresume%2FResumePreview.php%3FResumeId%3Djob1001781291708%26gjTag%3D1%26r%3Dac77374c24"
]]>
</personurl>
- <!-- 人才的链接(需转码)
-->
- <personjob>
- <![CDATA[ "总工程师/副总工程师"
]]>
</personjob>
- <!-- 意向职位
-->
- <personsex>
- <![CDATA[ "女"
]]>
</personsex>
- <!-- 性别
-->
- <personzy>
- <![CDATA[ "电气工程"
]]>
</personzy>
- <!-- 专业
-->
- <personschool>
- <![CDATA[ "阜宁中学"
]]>
</personschool>
- <!-- 毕业学校
-->
- <personupdate>
- <![CDATA[ "2010-04-21"
]]>
</personupdate>
- <!-- 更新日期
-->
</persondetail>
- <persondetail>
- <personname>
- <![CDATA[ "常先生 本科 电气.."
]]>
</personname>
- <!-- 人才姓名
-->
- <personurl>
- <![CDATA[ "http%3A%2F%2Fkg.dqjob88.com%2FmyNew%2Fresume%2FResumePreview.php%3FResumeId%3Djob1001222970408%26gjTag%3D2%26r%3Dac2205df24"
]]>
</personurl>
- <!-- 人才的链接(需转码)
-->
- <personjob>
- <![CDATA[ "电气工程师/技术员"
]]>
</personjob>
- <!-- 意向职位
-->
- <personsex>
- <![CDATA[ "女"
]]>
</personsex>
- <!-- 性别
-->
- <personzy>
- <![CDATA[ "法学"
]]>
</personzy>
- <!-- 专业
-->
- <personschool>
- <![CDATA[ "山东科技大学"
]]>
</personschool>
- <!-- 毕业学校
-->
- <personupdate>
- <![CDATA[ "2009-10-27"
]]>
</personupdate>
- <!-- 更新日期
-->
</persondetail>
- <persondetail>
- <personname>
- <![CDATA[ "刘先生 大专 工厂.."
]]>
</personname>
- <!-- 人才姓名
-->
- <personurl>
- <![CDATA[ "http%3A%2F%2Fkg.dqjob88.com%2FmyNew%2Fresume%2FResumePreview.php%3FResumeId%3Djob1001345792208%26gjTag%3D0%26r%3Dac34c39924"
]]>
</personurl>
- <!-- 人才的链接(需转码)
-->
- <personjob>
- <![CDATA[ "工厂厂长/副厂长/工厂经理"
]]>
</personjob>
- <!-- 意向职位
-->
- <personsex>
- <![CDATA[ "女"
]]>
</personsex>
- <!-- 性别
-->
- <personzy>
- <![CDATA[ "行政管理"
]]>
</personzy>
- <!-- 专业
-->
- <personschool>
- <![CDATA[ "厦门大学"
]]>
</personschool>
- <!-- 毕业学校
-->
- <personupdate>
- <![CDATA[ "2008-09-29"
]]>
</personupdate>
- <!-- 更新日期
-->
</persondetail>
</docs>
class xml2array{
public $str = '';
public $type = 0; //0为字符串,1为文件
function readxml(){
if($this->type==1){
$this->xmlstr = simplexml_load_file($this->str);//simplexml_load_file()作用是:将一个XML文档装载入一个对象中。
}else{
$this->xmlstr = simplexml_load_string($this->str);
}
}
function xarray(){
$this->readxml();
$arrstr = array();
$str = serialize($this->xmlstr); //serialize() 产生一个可存储的值的表示
$str = str_replace('O:16:"SimpleXMLElement"', 'a', $str);
$arrstr = unserialize($str); //unserialize() 从已存储的表示中创建 PHP 的值
return $arrstr;
}
}
$url="http://kg.dqjob88.com/oem/openxmlrc.php";
$xml_str=file_get_contents($url);
$xml_str=str_replace("\"]]>","",$xml_str);
$xml_str=str_replace("<![CDATA[\"","",$xml_str);
//对象引用
$t=new xml2array();
$t->str=$xml_str;
$i=1;
$m=$t->xarray();
$a=$m['persondetail'];foreach($a as $key =>$value)
{
}