【问题标题】:convert xml data issue in array in php在php中的数组中转换xml数据问题
【发布时间】:2016-10-08 09:10:28
【问题描述】:
$data = 
    '<parent>
       <child>
         <EC>1</EC>
         <Descript>Savings Accepted</Descript>
         <Logic>RF > LF = PAID</Logic>
         <Rules>RF is greater than PAID and LF is equal to PAID</Rules>
       </child>
       <child>
         <EC>2</EC>
         <Descript>Savings Declined</Descript>
         <Logic>RF >= LF < PAID</Logic>
         <Rules>RF greater/equal PAID, LF equal PAID</Rules>
       </child>
     </parent>';

file_put_contents('rules.xml', $data);

$xml = simplexml_load_file("rules.xml")  or die("Error: Cannot create object");

我无法转换。

【问题讨论】:

  • $data = '1接受的储蓄RF > LF = PAID RF 大于 PAID 且 LF 等于 PAID2Savings DeclinedRF >= LF RF 大于/等于 PAID,LF 等于 PAID'; file_put_contents('rules.xml', $data); $xml = simplexml_load_file("rules.xml") or die("Error: Cannot create object");
  • 请帮忙
  • 您可以编辑问题,也可以删除并创建一个新问题。请指定当前输出和预期输出。
  • file_put_contents('rules.xml', $data); 创建的文件是否正确?可以用浏览器打开吗?

标签: php xml oop parsing zend-framework


【解决方案1】:

你应该使用实体 <而不是

$data = <<<'XML'
<parent><child>
    <EC>1</EC>
    <Descript>Savings Accepted</Descript>
    <Logic>RF &gt; LF = PAID</Logic>
    <Rules>RF is greater than PAID and LF is equal to PAID</Rules>
</child>
<child>
    <EC>2</EC>
    <Descript>Savings Declined</Descript>
    <Logic>RF &gt;= LF &lt; PAID</Logic>
    <Rules>RF greater/equal PAID, LF equal PAID</Rules>
</child></parent>
XML;
file_put_contents('rules.xml', $data);
$xml = simplexml_load_file("rules.xml") or die("Error: Cannot create object");

print_r($xml);

输出

SimpleXMLElement 对象 ( [子] => 数组 ( [0] => SimpleXMLElement 对象 ( [欧共体] => 1 [描述] => 接受储蓄 [逻辑] => RF > LF = 付费 [规则] => RF大于PAID,LF等于PAID ) [1] => SimpleXMLElement 对象 ( [欧共体] => 2 [描述] => 储蓄被拒绝 [逻辑] => RF >= LF RF 更大/等于 PAID,LF 等于 PAID ) ) )

来源:http://www.tutorialspoint.com/xml/xml_character_entities.htm https://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references

【讨论】:

  • 嗨,理查德,我不想手动更改数据,所以我该怎么做,因为 xml 数据来自第三方服务
  • 您好 Sandeep,xml 无效。谁给你发的?你能打电话给他们并告诉他们 xml 无效吗?这可能是最好的处理方式。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-28
相关资源
最近更新 更多