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的文件,内容如下。

PHP接收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接收XML格式文件参数并转换成数组

<?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文件,来测试效果。

PHP接收XML格式文件参数并转换成数组

 

 结束。

相关文章:

  • 2022-12-23
  • 2021-06-22
  • 2021-08-05
  • 2021-10-10
  • 2022-12-23
  • 2022-12-23
  • 2021-06-08
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-02-02
  • 2022-01-03
  • 2021-11-17
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案