php 标签带特殊符号的xml转json

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <soapenv:Header/>
            <soapenv:Body>
                <p237:getNewSampleSerialNumsOutput xmlns:p237="http://www.cat.com/sos/2008/07/15/EquipmentService/">
                    <Equipment>
                        <p463:serialNumber xmlns:p463="http://www.cat.com/dds/Equipment/2008/07/15">JEE10732</p463:serialNumber>
                        <p463:make xsi:nil="true" xmlns:p463="http://www.cat.com/dds/Equipment/2008/07/15"/>
                    </Equipment>
                    <Equipment>
                        <p463:serialNumber xmlns:p463="http://www.cat.com/dds/Equipment/2008/07/15">LBX10017</p463:serialNumber>
                        <p463:make xsi:nil="true" xmlns:p463="http://www.cat.com/dds/Equipment/2008/07/15"/>
                    </Equipment>
                    <Equipment>
                        <p463:serialNumber xmlns:p463="http://www.cat.com/dds/Equipment/2008/07/15">ZAE10029</p463:serialNumber>
                        <p463:make xsi:nil="true" xmlns:p463="http://www.cat.com/dds/Equipment/2008/07/15"/>
                    </Equipment>
                </p237:getNewSampleSerialNumsOutput>
            </soapenv:Body>
        </soapenv:Envelope>

获取的xml如上,按照正常的simplexml_load_string方法因为标签有特殊符号:导致无法返回空。
但是我将标签和属性上的:去掉后就能正常获取值。
所以想问一下如何将标签和属性名的特殊符号过滤掉或者有什么方法可以直接转成json格式

谢谢

阅读 2.5k
1 个回答
$doc = new DOMDocument(); 
可以用这个
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题