2015-02-08 45 views
1

我有下面的代碼,我無法弄清楚如何呼應隨機每個值..如何回顯隨機數組?

<?php 
    $c1 = array(
     0 => '#d24726', 
     1 => '#bf3317' 
    ); 

    $c2 = array(
     0 => '#14826d', 
     1 => '#0d6856' 
    ); 

    $c3 = array(
     0 => '#624f87', 
     1 => '#534373' 
    ); 

    $c4 = array(
     0 => '#008198', 
     1 => '#006e87' 
    ); 

    $c5 = array(
     0 => '#08893e', 
     1 => '#067038' 
    ); 

    $randArray = array($c1,$c2,$c3,$c4,$c5); 

    echo '<pre>'; print_r($randArray); echo '</pre>'; 
?> 

這給下面的輸出..

Array 
(
    [0] => Array 
     (
      [0] => #d24726 
      [1] => #bf3317 
     ) 

    [1] => Array 
     (
      [0] => #14826d 
      [1] => #0d6856 
     ) 

    [2] => Array 
     (
      [0] => #624f87 
      [1] => #534373 
     ) 

    [3] => Array 
     (
      [0] => #008198 
      [1] => #006e87 
     ) 

    [4] => Array 
     (
      [0] => #08893e 
      [1] => #067038 
     ) 

) 

我想$ C1,C2 $ ,$ C3,C4 $或者$ C5進行隨機選擇,然後可以使用它們的值它們的顏色..

我試圖rand_array沒有工作..

$r = array_rand($randArray); 

echo $r[][0]; 
echo $r[][1]; 

回答

1

它的工作原理,你只需要使用這樣的:

array_rand()返回鍵,讓你只需要使用它的陣列爲重點的第一維)

$r = array_rand($randArray); 

echo $randArray[$r][0]; 
echo $randArray[$r][1]; 

對於有關array_rand()更多信息,請參閱手冊:http://php.net/manual/en/function.array-rand.php

而且報價從那裏:

當只取出一個,array_rand()返回一個隨機進入關鍵

+0

謝謝@ Rizier123。 – iBrazilian2 2015-02-08 13:23:24

+0

@ iBrazilian2不客氣!祝你有美好的一天:D – Rizier123 2015-02-08 13:23:47

0

你的代碼是正確的,但你必須指定下面的代碼由array_rand()。使用返回鍵

<?php 
    $c1 = array(
     0 => '#d24726', 
     1 => '#bf3317' 
    ); 

    $c2 = array(
     0 => '#14826d', 
     1 => '#0d6856' 
    ); 

    $c3 = array(
     0 => '#624f87', 
     1 => '#534373' 
    ); 

    $c4 = array(
     0 => '#008198', 
     1 => '#006e87' 
    ); 

    $c5 = array(
     0 => '#08893e', 
     1 => '#067038' 
    ); 

    $randArray = array($c1,$c2,$c3,$c4,$c5); 
$r = array_rand($randArray); 


    echo '<pre>'; print_r($randArray[$r]); echo '</pre>'; 
?> 

希望這可以幫助你