获取二维数组中的数组数

时间:2014-06-24 23:57:30

标签: php wordpress

我目前正在使用来自redux数组的feature用于wordpress,它让我的用户做的是创建一个数组,填充可定制数量的嵌套数组(每个嵌套数组代表一个幻灯片。)

我不是最好的php,这是一个非常简单的问题,但是,如果我通过类似foreach($mybigarray as $value)的方式运行它们,$ value会变成每个子数组 ,所以我可以通过这种方法用子阵列打印所有值:

foreach($mybigarray as $value){
  echo $value['1'];
  echo $value['2'];
}

如果这是错误的,我将如何通过 if 语句运行每个子数组(未知数量)。这样做时我应该知道的任何“最佳实践”?

谢谢!

示例数组的输出:

Array ( 
  [0] => Array (
    [title] => Title #1
    [description] => Sub Title Text #1
    [url] => Link #1
    [sort] => 1
    [attachment_id] => 1461
    [image] => http://demo.pixelcrescent.com/LeagueOfLegends/wp-content/uploads/2014/06/mountains.jpg
    [height] => 1200
    [width] => 1920
    [thumb] => http://demo.pixelcrescent.com/LeagueOfLegends/wp-content/uploads/2014/06/mountains-150x150.jpg
  )[1] => Array (
    [title] => Title #2
    [description] => Sub Title Text #2
    [url] => Link #2
    [sort] => 2
    [attachment_id] => 1461
    [image] => http://demo.pixelcrescent.com/LeagueOfLegends/wp-content/uploads/2014/06/mountains.jpg
    [height] => 1200
    [width] => 1920
    [thumb] => http://demo.pixelcrescent.com/LeagueOfLegends/wp-content/uploads/2014/06/mountains-150x150.jpg
  )[2] => Array (
    [title] => Title #3
    [description] => Sub Title Text #3
    [url] => link #3
    [sort] => 3
    [attachment_id] => 1461
    [image] => http://demo.pixelcrescent.com/LeagueOfLegends/wp-content/uploads/2014/06/mountains.jpg
    [height] => 1200
    [width] => 1920
    [thumb] => http://demo.pixelcrescent.com/LeagueOfLegends/wp-content/uploads/2014/06/mountains-150x150.jpg
  )
)

1 个答案:

答案 0 :(得分:1)

  

如果我通过foreach($ mybigarray作为$ value)运行它们,   将$值变为每个子数组

是的,每个$value都会成为子阵列。

但是,如你所说,如果它有一个可定制数量的嵌套数组(数组中的数组中的数组......),你必须编写自己的递归多数组读取器 ,或检查已经存在的那些。

例如尝试这个:http://www.php.net//manual/en/class.recursivearrayiterator.php

顺便说一下,如果你的意思是可自定义数量的嵌套数组,就像在一个包含许多一个级别数组的巨型数组中那样,那么foreach应该是正义的。