PHP接收XML格式文件参数并转换成数组
XML 指可扩展标记语言(eXtensible Markup Language)
:xml被设计用来传输和存储数据。
一段如下格式的数据格式:
<?xml version="1.0" encoding="UTF-8"?> <note> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend!</body> </note>
问题:
下面我们演示下如何通过postman传输一个xml的文件给PHP接口,并且将其转换成数组。
1、我们先新建一个test.xml的文件,内容如下。
<?xml version="1.0" encoding="UTF-8"?> <node> <id>10001</id> <userName>admin</userName> <node> <token>9875ghjsd544544545sdsd78we</token> <body>这是admin账户的token</body> </node> </node>
2、然后在新建一个test.php的文件来接受,并且将其转换成数组。
<?php //1、把整个文件读入一个字符串中:(用于接收xml文件) $xml_file = file_get_contents('php://input'); //2、转换形式良好的 XML 字符串为 SimpleXMLElement 对象,然后输出对象的键和元素:(用于处理接收到的xml数据,将其转换成对象) $xml_object = simplexml_load_string($xml_file, 'SimpleXMLElement', LIBXML_NOCDATA); //3、对象转成json $xml_json=json_encode($xml_object); //4、json再转成数组 $xml_arr=json_decode($xml_json,true); //最后打印输出 echo "<pre>"; var_dump($xml_arr);
3、最后通过postman调用test.php接口,参数为test.xml文件,来测试效果。
结束。
-----END
影子是一个会撒谎的精灵,它在虚空中流浪和等待被发现之间;在存在与不存在之间....