我有一个输出以下内容的数组:
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'];
文档