【问题标题】:how to pass JSON data though a foreach loop in php如何通过php中的foreach循环传递JSON数据
【发布时间】:2015-03-25 08:17:37
【问题描述】:

我希望 JSON 数据在 php 中考虑一个 foreach 循环,但每次我尝试这样做时都会收到以下错误消息:

可捕获的致命错误:stdClass 类的对象无法转换 串起来

PHP:

<?php
  $xml_events = simplexml_load_file('xml_data/current_events.xml');

  $results = array();


  foreach ($xml_events->event as $event) {
    array_push($results, array(
        'name' => $event->name,
        'cover' => $event->cover,
    ));
  }

  $data = json_encode($results);
  $json = json_decode($data);

  foreach ($json as $name)
  {
    echo $name->name; 
  }

XML:

<?xml version="1.0"?>
<data>
  <event>
    <name>Barclays ATP World Tour Finals</name>
  </event>
</data>

JSON 数据:

"[{"name":{"0":"Barclays ATP World Tour Finals"}},{"name":{"0":"2015 National Television Awards"}},{"name":{"0":"Barclays ATP World Tour Finals"}},{"name":{"0":"Barclays ATP World Tour Finals"}},{"name":{"0":"Barclays ATP World Tour Finals"}},{"name":{"0":"Doctor who"}},{"name":{"0":"Apple Party"}},{"name":{"0":"ice-cream"}}]"

【问题讨论】:

    标签: arrays xml json foreach


    【解决方案1】:

    $name 是一个对象,所以解决方法是使用:

    echo $name->name->{0};
    

    【讨论】:

      猜你喜欢
      • 2013-08-19
      • 2020-01-12
      • 2018-06-22
      • 2020-10-14
      • 2021-08-26
      • 2014-01-26
      • 2015-04-22
      • 1970-01-01
      • 2014-09-29
      相关资源
      最近更新 更多