singwa老师,xml的id属性是否应该是唯一的呢?按着您的方法数组定义成这样如图
然后就会出现这样的xml,如图
,是不是代码写的不完善呢?怎么完善呢?
singwa老师,xml的id属性是否应该是唯一的呢?按着您的方法数组定义成这样如图
然后就会出现这样的xml,如图
,是不是代码写的不完善呢?怎么完善呢?
2014-09-03
您好,谢谢您的问题,xml节点熟悉在同一个节点下是需要唯一的,刚刚看了代码,代码存在一个bug。
之前的方法:
public static function xmlToEncode($data) { $xml = $attr = ""; foreach($data as $key => $value) { if(is_numeric($key)) { $attr = " id='{$key}'"; $key = "item"; } $xml .= "<{$key}{$attr}>"; $xml .= is_array($value) ? self::xmlToEncode($value) : $value; $xml .= "</{$key}>\n"; } return $xml; } 优化后的代码: public static function xmlToEncode($data) { $xml = ""; foreach($data as $key => $value) { $attr = ""; if(is_numeric($key)) { $attr = " id='{$key}'"; $key = "item"; } $xml .= "<{$key}{$attr}>"; $xml .= is_array($value) ? self::xmlToEncode($value) : $value; $xml .= "</{$key}>\n"; } return $xml; }
最后谢谢您的问题,祝学习愉快!
举报