1

次を出力する配列があります。

Array ( [roi_data] => Array (
    [0] => Array ( [title] => Test ROI )
    [1] => Array ( [title] => Another ROI ) 
))

タイトルを持つすべてのキーを1つの配列に結合し、そこからランダムな値をエコーし​​たいと思います。

使ってみarray_rand()ましたが、単語Arrayが表示されます。

4

2 に答える 2

6

ネストされた配列があるため、次のものが必要になります。

$key = array_rand( $array['roi_data']);
echo $array['roi_data'][$key]['title'];
于 2012-07-27T16:36:26.217 に答える
3

多次元配列があります。を呼び出すと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'];

ドキュメンテーション

于 2012-07-27T16:38:25.453 に答える