我有一个数组,它输出以下内容:
Array ( [roi_data] => Array (
[0] => Array ( [title] => Test ROI )
[1] => Array ( [title] => Another ROI )
))
我想把所有带标题的键组合成一个数组,然后从中回显一个随机值
我试过使用array_rand()
,但我只是让单词Array
出现。
您有一个嵌套数组,因此需要:
$key = array_rand( $array['roi_data']);
echo $array['roi_data'][$key]['title'];
您有一个多维数组。当您调用array_rand
时,您将从第一层数组中返回一个随机元素——这个元素本身就是一个数组。
Array (
[roi_data] => Array ( <-- there is only one element in the top level
[0] => Array ( <-- there are two elements in this level
[title] => Test ROI <-- there is only one element in this level
),
[1] => Array (
[title] => Another ROI
)
)
)
因此,如果您想要roi_data
级别的随机元素,则必须指定:
$key = array_rand($myArray['roi_data']);
$item = $myArray['roi_data'][$key];
echo $item['title'];
文档
array_rand
-http://php.net/manual/en/function.array-rand.php- PHP数组-http://php.net/manual/en/language.types.array.php
- 了解多维数组-http://webcheatsheet.com/php/multidimensional_arrays.php