2016-09-17 93 views
1

我需要一個PHP腳本爲我的網站,以從數組中挑選(所有)值並隨機顯示它們。如何以隨機順序一次顯示所有數組值?

每個值只能顯示一次。

這是迄今爲止我寫的代碼,問題是值不會被採取一次。

<?php 
$one = 'SITE 1<br><br>'; 
$two = 'SITE 2<br><br>'; 
$three = 'SITE 3<br><br>'; 
$four = 'SITE 4<br><br>'; 
$five = 'SITE 5<br><br>'; 

$array = array($one, $two, $three, $four, $five); 
for ($i=0; $i<5; $i++) { 
    echo $array[rand(0, count($array) - 1)] . "\n"; 
} 
?> 

您可以測試這個代碼直接在這裏:https://www.fabriziorocca.it/test/phprandom.php

回答

3

您可以使用洗牌:

<?php 
$one = 'SITE 1<br><br>'; 
$two = 'SITE 2<br><br>'; 
$three = 'SITE 3<br><br>'; 
$four = 'SITE 4<br><br>'; 
$five = 'SITE 5<br><br>'; 

$array = array($one, $two, $three, $four, $five); 
shuffle($array); 
foreach($array as $item) { 
    echo $item . "\n"; 
} 
?> 
+0

解析錯誤:語法錯誤,意外 '的foreach'(T_FOREACH)中/的public_html /測試/ phprandom.php 10行 –

+1

對不起,我忘了';'洗牌後。再試一次 –

+0

它的工作原理!謝謝。 –