未定义的偏移多维数组Laravel

时间:2014-09-16 01:16:39

标签: php arrays laravel

我只是不能让这个数组发挥得很好。 我正在使用Laravel 4.2并抛出:ErrorException(E_UNKNOWN)未定义的偏移量:1

$tags = Test\Zero::get_tags();

dd ($tags);

    array (size=2)
  0 => 
    array (size=4)
      'guid' => string '-a035-4742-bb65-c44' (length=36)
      'name' => string 'tagtest1' (length=9)
      'updateSequenceNum' => int 14
      'parentGuid' => null
  1 => 
    array (size=4)
      'guid' => string '-905e-466e-9e91-33ddggg4' (length=36)
      'name' => string 'testtag2' (length=11)
      'updateSequenceNum' => int 19
      'parentGuid' => null

$tags = array_dot(`$tags);


array (size=8)
  '0.guid' => string '-a035-4742-bb65-c44' (length=36)
  '0.name' => string 'tagtest1' (length=9)
  '0.updateSequenceNum' => int 14
  '0.parentGuid' => null
  '1.guid' => string '-905e-466e-9e91-33ddggg4' (length=36)
  '1.name' => string 'testtag2' (length=11)
  '1.updateSequenceNum' => int 19
  '1.parentGuid' => null


$name = array_fetch($tags, '1.name');
echo $name;

如何通过键'name'循环显示所有值? 我尝试的一切都给出了ErrorException(E_UNKNOWN)Undefined offset:

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

虽然@MichaelBerkowski是正确的,但如果您确实想要使用Laravel数组助手,那么它将是:

$names = array_fetch($tags, 'name');

会给你一个数组,而不是一个字符串(所以在你的例子中有echo $name就会给你一个Array to string conversion错误。)

当你有一个多维关联数组时,你可能会混淆你尝试的语法,就像在array_fetch的Laravel文档中那样:http://laravel.com/docs/helpers

顺便提一下,如果$tags是一个集合,您可以执行:$tags->lists('name');