2012-03-08 203 views
2

我是初學者,當談到編程時,我想看看這是否是正確的編碼方式。我試圖從數組中生成隨機背景顏色。陣列的隨機背景顏色 - PHP

如果有什麼我失蹤或有什麼我可以做得更好請讓我知道。

<?php 
    $background_colors = array('#282E33', '#25373A', '#164852', '#495E67', '#FF3838'); 

    $count = count($background_colors) - 1; 

    $i = rand(0, $count); 

    $rand_background = $background_colors[$i]; 
?> 
<html> 
    <head> 

    </head> 
    <body style="background: <?php echo $rand_background; ?>;"> 

    </body> 
</html> 

回答

4

這很不錯。

不過,我會做它像這樣與array_rand() ...

$background_colors = array('#282E33', '#25373A', '#164852', '#495E67', '#FF3838'); 

$rand_background = $background_colors[array_rand($background_colors)]; 

這是更少的代碼,更具可讀性海事組織。

+0

啊好吧,我一直在尋找該功能,但不知道如何使用它。謝謝。 – 2012-03-08 02:32:22

1
function GenerateRandomColor() 
{ 
    $color = '#'; 
    $colorHexLighter = array("9","A","B","C","D","E","F"); 
    for($x=0; $x < 6; $x++): 
     $color .= $colorHexLighter[array_rand($colorHexLighter, 1)] ; 
    endfor; 
    return substr($color, 0, 7); 
} 
1
<?php 
    function bgcolor(){return dechex(rand(0,10000000));} 
?> 
<html> 
    <head> 
    </head> 
    <body style="background:#<?php echo bgcolor(); ?>">  

    </body> 
</html> 
+0

編輯並縮進您的代碼 – HDJEMAI 2016-07-16 22:18:38

+0

@ H.Djemai謝謝 – 2016-07-17 09:51:37

+0

看起來OP希望從列表中隨機選擇一個項目 - 而不是任意的隨機顏色。 – alex 2016-11-22 08:07:03