我想生成介于0和1之间的随机数,并将它们推送到二维数组。我收到了这个错误:
不能将标量值用作数组
这是我的代码:
<?php
$zero = $one = $rand = 0;
$arr = array(array());
for($i = 0; $i < 5; $i++) {
$arr[$i] = $rand;
for($j = 0; $j < 10; $j++) {
$rand = mt_rand(0,1);
if ($rand == 0) {
$one++;
} else {
$zero++;
}
$arr[$i][$j] = $rand;
echo $arr[$i][$j];
}
echo "<br/>";
}
?>
答案 0 :(得分:1)
$arr[$i]
是一个标量值,因为你在这里给它一个整数:
$arr[$i] = $rand;
因为不是一个数组。但是你试图像一个抛出这个错误的数组一样访问它:
$arr[$i][$j] = $rand;
您需要将该值设为数组或使用其他变量来保存数组数据。但你不能同时做到这两件事。