[英]php xml serialize and unserialize with pear
我注意到PEAR XML_Serializer
和XML_Unserializer
不是“可逆的”,例如:
<?php
$a = array(1, 2);
$serializer = new XML_Serializer();
$serializer->serialize($a);
$b = $serializer->getSerializedData();
print($b); // "<array><XML_Serializer_Tag>1</Xml_Serializer_Tag><XML_Serializer_Tag>2</Xml_Serializer_Tag></array>"
$unserializer = new XML_Unserializer();
$unserializer->unserialize($b);
$c = $unserializer->getUnserializedData();
print_r($c); // array('XML_Serializer_Tag' => array(1, 2)) instead of array(1, 2)
XML_Unserializer
是否有任何選項可以遞歸刪除Xml_Serializer_Tag
?
我在XML_Unserializer選項中找到了答案PEAR文檔
我在上面的代碼中修改了一行,並且有效:
$unserializer = new XML_Unserializer(array(XML_UNSERIALIZER_OPTION_IGNORE_KEYS => array('XML_Serializer_Tag')));
太糟糕了,這不是默認值...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.