2017-03-10 52 views
0

我有3個數組。從隨機數組中選擇值PHP

$a = array([ 'name' => 'Max', 'age' => '21' ]) 
$b = array([ 'name' => 'Tom', 'age' => '31' ]) 
$c = array([ 'name' => 'Lucy', 'age' => '41' ]) 

我想選擇一個隨機的,然後訪問數組中的鍵。

因此,例如:

$selectedarray = array($a,$b,$c) 
echo $selectedarray['name']; 
+0

鍵始終是'name'和'age' – C2486

回答

0

使用array_rand挑選從所有條目的數組的隨機指數

$entries = [ 
    [ 'name' => 'Max', 'age' => '21' ], 
    [ 'name' => 'Tom', 'age' => '31' ], 
    [ 'name' => 'Lucy', 'age' => '41' ] 
]; 
$selected = $entries[array_rand($entries, 1)]; 
var_dump($selected); 
0

你錯過了一步 - 隨機採摘。您可以使用array_rand()或用手做:

$array_pool = array($a,$b,$c); 
$selected_array = $array_pool[array_rand($array_pool)]; 
... 

$array_pool = array($a,$b,$c); 
$selected_array = $array_pool[mt_rand(0, count($array_pool))]; 
... 
0

你可以簡單地做rand方法。

<?php 
    $a = [ 'name' => 'Max', 'age' => '21' ]; 
    $b = [ 'name' => 'Tom', 'age' => '31' ]; 
    $c = [ 'name' => 'Lucy', 'age' => '41' ]; 
    $selectedarray = [$a,$b,$c]; 
    print_r($selectedarray[rand(0,count($selectedarray)-1)]); 
?> 

現場演示:https://eval.in/752158