<?php /*ArrayToByte($a,$len) * $a: 需要转换的array数组 * $offset: 偏移量 * $len: 长度 * 返回值 转换后的byte数组 (ascii) */ function ArrayToByte($a,$offset,$len) { $s="1"; $length=strlen($a); //echo "len=".$length."</br>"; for($i=$offset;$i<$len+$offset;$i++) $s[$i-$offset]=chr($a[$i]); return $s; } /*ByteToArray($a) * $a: 需要转换的byte数组 * $offset: 偏移量 * $len: 长度 * 返回值 转换后的array数组 (ascii) */ function ByteToArray($a) { $s=array(); $length=strlen($a); //echo "len=".$length."</br>"; for($i=0;$i<$length;$i++) $s[$i]=ord($a[$i]); return $s; } /* print_array_hex($a,$len) * $a: 需要打印的array数组 如:$a=array(0x01,0x02,0x03,0x04,0x05); * $len: 长度 * 打印结果 01 02 03 04 05 */ function print_array_hex($a,$len) { $hex=array('0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'); for($i=0;$i<$len;$i++) { $temp=$a[$i]; echo $hex[$temp/16].$hex[$temp%16]." "; } echo "</br>"; } /* print_byte_hex($a,$len) * $a: 需要打印的byte数组 如:a[5]={0x01,0x02,0x03,0x04,0x05}; * $len: 长度 * 打印结果 01 02 03 04 05 */ function print_byte_hex($a,$len) { $hex=array('0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'); for($i=0;$i<$len;$i++) { $temp=ord($a[$i]); echo $hex[$temp/16].$hex[$temp%16]." "; } echo "</br>"; } function write_log($array,$ip) { $hex=array('0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'); $m=""; for($i=0;$i<count($array);$i++) { $m.=" ".$i."=0x".$hex[$array[$i]/16].$hex[$array[$i]%16]; } $fp=fopen("log.txt","a"); $fc=flock($fp,LOCK_EX); if($fc) { fwrite($fp,"\n".date("Y-m-d H:i:s")." ".$ip." ".$m."\n"); flock($fp,LOCK_UN); } fclose($fp); } function write_error_log($info,$ip) { $fp=fopen("error.txt","a"); $fc=flock($fp,LOCK_EX); if($fc) { fwrite($fp,"\n".date("Y-m-d H:i:s")." ".$ip." ".$info."\n"); flock($fp,LOCK_UN); } fclose($fp); } function write_xml($id,$data) { $id_count=count($id); $data_count=count($data); //$books [0] = array("aaaaaaaa","vvvvvvv","eeeeeeee"); //$books [1] = array("vvvvvvv","bbbbbbbbb","eeeeeeee"); //$books [2] = array("eeeeeeee","fffffffff","eeeeeeee"); if(!$data_count) return 0; $doc = new DOMDocument("1.0","utf-8"); $doc->formatOutput = true; $r = $doc->createElement( "list" ); $doc->appendChild( $r ); //foreach( $books as $book ) for($i=0;$i<$data_count;$i++) { $mydata=$data[$i]; if($id_count!=count($mydata)) //标签的个数是否与一维数组元素个数一致? return 0; $b = $doc->createElement( "info" ); for($j=0;$j<$id_count;$j++) { $book=$data[$i]; $name=$doc->createElement($id[$j]); $info=$doc->createTextNode($book[$j]); $name->appendChild($info); $b->appendChild($name); } $r->appendChild( $b ); } //$doc->save('222.xml'); return $doc->saveXML(); } function read_xml($xml) { $a=simplexml_load_string($xml); //return $a; $result=array(); for($i=0;$i<count($a);$i++) { $result[$i]=(array)$a->info[$i]; } return $result; } //$a=array(0x01,0x02,0x03,0x04,0x05); //write_log($a); /*print_hex($a,5); $b="1"; $b=ArrayToByte($a,5); print_ascii_hex($b,5);*/ ?>
<?php require_once("../function/function.php"); $id=array("epc","jingdu","weidu","time"); $books=array(); $books [0] = array("1111111111","202","222","2011"); $books [1] = array("222222222222","303","321","2011"); $books [2] = array("1234343434","403","203","2011"); $s=write_xml($id,$books); //$a=simplexml_load_string($s); //$d=$a->info; //$d=$a['info']; //echo $d->title; print_r($s); ?>
<?xml version="1.0" encoding="utf-8"?> <list> <info> <epc>1111111111</epc> <jingdu>202</jingdu> <weidu>222</weidu> <time>2011</time> </info> <info> <epc>222222222222</epc> <jingdu>303</jingdu> <weidu>321</weidu> <time>2011</time> </info> <info> <epc>1234343434</epc> <jingdu>403</jingdu> <weidu>203</weidu> <time>2011</time> </info> </list>
Array ( [0] => Array ( [epc] => 2321211111 [jingdu] => 202 [weidu] => 222 [time] => 2011 )
[1] => Array ( [epc] => 222222222222 [jingdu] => 303 [weidu] => 321 [time] => 2011 )
[2] => Array ( [epc] => 1234343434 [jingdu] => 403 [weidu] => 203 [time] => 2011 )
)
php生成xml
最新推荐文章于 2024-09-24 10:23:17 发布