根据PHP数组生成XML的类
本类库用来直接由PHP数组生成XML文件。 演示:http://www.cn09.com/media/demo/testXML.php本帖为简单(www.cn09.com)原创,转载请保留链接,使用本类库时请遵循LGPL协议
类库代码:MakeXML.php:
[*]$nodeParam){
[*] if(!is_array($nodeParam)){
[*] //如果不是一个下级元素,那就是元素的参数
[*] $XMLString.=$paramKey.'="'.$nodeParam.'" ';
[*] }else{
[*] if(!$haveRightBracket){
[*] $XMLString.='>';
[*] $haveRightBracket=TRUE;
[*] }
[*] //如果是下级元素,则追加元素
[*] $XMLString.=$this->make($nodeParam);
[*] }
[*] }
[*] }
[*] if(!$haveRightBracket){
[*] $XMLString.='>';
[*] $haveRightBracket=TRUE;
[*] }
[*] $XMLString.='';//该元素处理结束
[*] return $XMLString;
[*] }
[*]
[*] /**
[*] * 将字串保存到文件
[*] * @param $fileName 文件名
[*] * @param $XMLString 已经生成的XML字串
[*] */
[*] public function saveToFile($fileName,$XMLString)
[*] {
[*] if(!$handle=fopen($fileName,'w'))
[*] {
[*] return FALSE;
[*] }
[*] if(!fwrite($handle,$XMLString))
[*] {
[*] return FALSE;
[*] }
[*] return TRUE;
[*] }
[*]
[*] /**
[*] * 直接通过数组生成XML文件
[*] */
[*] public function write($fileName,$array,$xslName=''){
[*] $XMLString=$this->getXML($array,$xslName);
[*] $result=$this->saveToFile($fileName,$XMLString);
[*] return $result;
[*] }
[*]}
复制代码测试代码testXML.php:
[*]
页:
[1]