将XML转换为Json(标记为UTF-16但具有UTF-8内容的文档)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将XML转换为Json(标记为UTF-16但具有UTF-8内容的文档)相关的知识,希望对你有一定的参考价值。
我有一个XML,我想转换为JSON。
XML如下。
<?xml version="1.0" encoding="UTF-8"?>
<ns0:COMMAND xmlns:ns0="http://www.tibco.com/schemas/pinless/PINLESS.core/C2STransferBillPayment/Schema.xsd9">
<ns0:TYPE>EXRCTRFRESP</ns0:TYPE>
<ns0:TXNSTATUS>7893</ns0:TXNSTATUS>
<ns0:DATE>14/02/18 12:22:30</ns0:DATE>
<ns0:EXTREFNUM>Dibon20180214122227pnqeP1yxqN</ns0:EXTREFNUM>
<ns0:TXNID />
<ns0:MESSAGE>No such user exists, password is invalid.</ns0:MESSAGE>
</ns0:COMMAND>
我试过了
$xml = simplexml_load_string($xml_string);
$json = json_encode($xml);
但得到了simplexml_load_string(): Entity: line 1: parser error : Document labelled UTF-16 but has UTF-8 content
。
有关如何将XML转换为JSON的任何建议吗?
答案
我认为你有一个命名空间问题
$responsexml = simplexml_load_string($xml_string);
$child_data_response = $responsexml->children('http://www.tibco.com/schemas/pinless/PINLESS.core/C2STransferBillPayment/Schema.xsd9');
print_r($child_data_response);
从那里你可以使它成为一个对象,你可以json编码或做任何你想要的东西
以上是关于将XML转换为Json(标记为UTF-16但具有UTF-8内容的文档)的主要内容,如果未能解决你的问题,请参考以下文章