Access数组元素:未定义的偏移量:0

时间:2015-11-10 09:30:57

标签: php arrays object laravel-5.1

我在Blade中有一个对象($project)。

当我做{{ var_dump($project) }}时,我得到:

object(stdClass)[603]
  public 'image_header' => 
    array (size=1)
      0 => 
        object(stdClass)[610]
          public 'img' => string 'amsterdam.jpg' (length=13)

当我尝试使用:

访问刀片中的此元素时
{{ $project->image_header[0]->img }}

它一直给出这个错误:

  

未定义的偏移量:0。

Print_r输出:

stdClass Object ( 
           [image_header] => Array ( 
                             [0] => stdClass Object ( 
                                       [img] => amsterdam.jpg 
                                    ) 
                             ) 
                 )

1 个答案:

答案 0 :(得分:0)

//recreating your original
$obj2 = (object)['img' => 'amsterdam.jpg'];
$obj1 = (object)['image_header' => [$obj2]];

$answer = json_decode(json_encode($obj1), true)['image_header'][0]['img'];

var_dump($answer); //string(13) "amsterdam.jpg" 

来自stackoverflow back in 2010(本地json需要PHP> = 5.2,而函数调用需要5.?来获取元素,否则分成两行)