2016-04-15 4 views
1

私は反復しない数字のリストを持っています。私はランダムにこれらの数字をすべて表示する必要があります。 http://www.w3schools.com/php/func_array_rand.aspから私は運がないいくつかのアプローチを学びます。私が "array_rand"を使用する場合、すべての出力は昇順でなければなりません。私の最終的な出力は、ランダム性のない1から10までの順番になります。PHPのリストの順序を乱す方法

<!DOCTYPE html> 
<html> 
<body> 

<?php 
$a=array(1,2,3,4,5,6,7,8,9,10); 
$random_keys=array_rand($a,10); 
echo $a[$random_keys[0]]."<br>"; 
echo $a[$random_keys[1]]."<br>"; 
echo $a[$random_keys[2]]."<br>"; 
echo $a[$random_keys[3]]."<br>"; 
echo $a[$random_keys[4]]."<br>"; 
echo $a[$random_keys[5]]."<br>"; 
echo $a[$random_keys[6]]."<br>"; 
echo $a[$random_keys[7]]."<br>"; 
echo $a[$random_keys[8]]."<br>"; 
echo $a[$random_keys[9]]."<br>"; 
?> 

</body> 
</html> 
+2

私は 'すべての出力がなければなりませんarray_rand'使用する場合は」とはどういう意味ですか増加する順序で?明確にすることはできますか? –

+1

第1のヒント - w3schoolsを使用しないでください。PHPマニュアル(http://php.net/manual/en/function.array-rand.php)のような評判の良いソースを使用してください。 2番目のヒント - 'foreach'ループを使って配列を出力する – Novocaine

答えて

6

shuffle機能は、配列の要素の順序をランダム化します。

$a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; 
shuffle($a); 
echo implode('<br>', $a); 
1

使用php array shuffle

<!DOCTYPE html> 
<html> 
<body> 

<?php 
$a=array(1,2,3,4,5,6,7,8,9,10); 

print_r($a); 

shuffle($a); 

echo "<br/>"; 

print_r($a); 

?> 

</body> 
</html> 
2

あなたが実際に探しているPHPは次のとおりです。

$a = array(1,2,3,4,5,6,7,8,9,10); 
shuffle($a); 
foreach($a as $n){ 
    echo "$n<br>"; 
} 

array_rand

は、配列のうち一つ以上のランダムなエントリをピックし、ランダムなエントリのキー(またはキー)を返します。

shuffle

シャッフル(要素の順番をランダムに)配列

0
<!DOCTYPE html> 
<html> 
<body> 

<?php 
$numbers = range(1, 10); 
shuffle($numbers); 
foreach ($numbers as $number) { 
    echo "$number<br>"; 
} 
?> 

</body> 
</html> 
関連する問題