PHP SimpleXML 到 JSON 编码单元素数组

标签 php arrays parsing simplexml curly-brackets

我正在尝试使用 php 将 xml 解析为单个元素 json 数组。

这就是我所拥有的:

$t = array();

$a=array("url"=>$test->channel->item->link);
array_push($t,$a);
echo json_encode($t);;

这给了我这个:

[{"url":{"0":"http:www.example.com"}}]

但是我正在寻找这个:

[{"url":"http:www.example.com"}]

似乎 $test->channel->item->link 用大括号解析为 {url}

但是如果我执行echo $test->channel->item->link,我会得到:www.example.com,不带大括号。

最佳答案

不确定这是否是您正在寻找的,但它确实有效:)

$xmlstr = '<?xml version=\'1.0\' standalone=\'yes\'?>
      <container>
        <channel>
          <item>
            <link>www.example.com</link>
          </item>
        </channel>
      </container>';

$test = new SimpleXMLElement($xmlstr);

$t = array();
$a = array("url"=>$test->channel->item->link->__toString());
array_push($t,$a);
echo json_encode($t); // [{"url":"www.example.com"}]

关于PHP SimpleXML 到 JSON 编码单元素数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17773400/

相关文章:

c++ - 难以解析后面的评论;在一条线上

javascript - 如何检测函数是否是最后一个被调用的

php - 使用 PHP SELECT 然后将数据插入 MySQL

PHP随机行帮助

php - MySQL - NOT IN 产生不需要的结果

php - 有趣的正则表达式

arrays - 按行和按列对元组进行排序

java - 如何漂亮地打印 GumTreeDiff ITree?

arrays - 有没有更好的方法来连接子列表且余数不变?

arrays - 从一个范围声明并初始化一个类型化数组