我对这是如何工作(标题)有点困惑? 例如,我正在设置一个像这样的数组
$array[rand(0, 5)] = 'Alex';
$array[rand(0, 5)] = 'Blue';
$array[rand(0, 5)] = 'Dale';
$array[rand(0, 5)] = 'Matt';
数组的var_dump($array);
之后的可能结果示例:
Array
(
[0] => Blue
[1] => Dale
[2] => Matt
)
技术上会发生什么?
答案 0 :(得分:0)
你的构造数组用每个值的随机键。和(0,5)意味着它取0-5之间的任何一个数字,但可能是关键覆盖问题在这里。 这是最好的例子。不止一次地运行这个,知道每个输出。你可以看到重复的键
<?php
$array1[rand(0, 5)] = 'Alex';
$array2[rand(0, 5)] = 'Blue';
$array3[rand(0, 5)] = 'Dale';
$array4[rand(0, 5)] = 'Matt';
print_r($array1);
print_r($array2);
print_r($array3);
print_r($array4);
output:
out put differ each time .here you can see the key repetation .
Array ( [4] => Alex )
Array ( [3] => Blue )
Array ( [4] => Dale )
Array ( [5] => Matt )
?>
答案 1 :(得分:0)
考虑以下示例:
$array[0] = 'Alex'; //replaced rand(0, 5) with 0
$array[3] = 'Blue'; //replaced rand(0, 5) with 3
$array[2] = 'Dale'; //replaced rand(0, 5) with 2
$array[4] = 'Matt'; //replaced rand(0, 5) with 4
var_dump($array);
我们的输出如下,没有任何变化:
当您使用rand(0, 5)
时,它会获取随机值,因此每次运行时它都会不断变化,并且您有不同的输出。
var_dump
- 转储有关变量的信息
有关var_dump
的更多信息