php脚本读取xml最原始,最笨的方法,代码如下:
$doc = new domdocument(); $doc->load('test.xml'); $rows = $doc->getelementsbytagname(ds); $d = array(); $i = 0; foreach($rows as $row) { $web = $row->getelementsbytagname('web'); $weburl = $row->getelementsbytagname('weburl'); $d[$i]['web'] = $web->item(0)->nodevalue; $d[$i]['weburl'] = $weburl->item(0)->nodevalue; $i++; } print_r($d);
简单,容易,速度快,代码如下:
$xmldata = file_get_contents('test.xml'); $xml = simplexml_load_string($xmldata); $xmlarr = objecttoarray($xml);
objecttoarray函数代码如下:
function objecttoarray($object) { if(!$object) return ''; $result = array(); $object = is_object($object) ? get_object_vars($object) : $object; foreach ($object as $key => $val) { $val = (is_object($val) || is_array($val)) ? objecttoarray($val) : $val; $result[$key] = $val; } return $result; }
上面讲到了读取xml,下面再介绍写xml实例,代码如下:
$arr = array( array('id'=>1,'web'=>'好脚本','weburl'=>'http://www.phprm.com'), array('id'=>2,'web'=>'php脚本','weburl'=>'http://www.phprm.com/'), array('id'=>3,'web'=>'javascript脚本','weburl'=>'http://www.phprm.com/'), array('id'=>4,'web'=>'js脚本','weburl'=>'http://www.phprm.com/'), array('id'=>5,'web'=>'php脚本示例','weburl'=>'http://www.phprm.com/'), array('id'=>5,'web'=>'javascript脚本示例','weburl'=>'http://www.phprm.com/') ); /*使用dom生成xml,注意生成的xml中会没有空格。*/ $dom=new domdocument('1.0','utf-8'); $path= logs/test.xml; $data=$dom->createelement('data'); $dom->appendchild($data); foreach($arr as $v) { $ds = $dom->createelement('ds'); $id = $dom->createattribute('id'); $id->nodevalue = $v['id']; $ds->setattributenode($id); $data->appendchild($ds); foreach($v as $kk=>$vv) { ${$kk} = $dom->createelement($kk); $value= $dom->createtextnode($vv); ${$kk}->appendchild($value); $ds->appendchild(${$kk}); } } $dom->savexml(); $dom->save($path);
教程链接:
随意转载~但请保留教程地址★
