我有这个片段,我试图生成随机数组数组的数组。
function generateRandomNumbers($pACount, $pBCount, $pCCount, $pDCount) {
$points = array();
$score = array();
$res = array();
$val = array();
for ($i = 0; $i <= $pACount; $i++) {
for ($j = 0; $j <= $pBCount; $i++) {
for ($k = 0; $k <= $pCCount; $i++) {
for ($l = 0; $l <= $pDCount; $i++) {
$points[] = rand(5, 95);
}
$score[] = $points;
}
$res[] = $score;
}
$val[] = $res;
}
return $val;
}
当我将其返回给AJAX时,它返回为:[[[[5, 32, 73, 62, 45]]]]
这被认为是
[[[[5, 32, 73, 62, 45], [15, 2, 7, 6, 50]],[[25, 52, 93, 2, 5], [16, 32, 67, 63, 15]]]]
我对php编码非常陌生(一周后开始),我不知道这里。 我错过了什么?
答案 0 :(得分:5)
您在每个$i++
循环中使用for
,而它应该是$j++
,$k++
和$l++
。
function generateRandomNumbers($pACount, $pBCount, $pCCount, $pDCount) {
$points = array();
$score = array();
$res = array();
$val = array();
for ($i = 0; $i <= $pACount; $i++) {
for ($j = 0; $j <= $pBCount; $j++) {
for ($k = 0; $k <= $pCCount; $k++) {
for ($l = 0; $l <= $pDCount; $l++) {
$points[] = rand(5, 95);
}
$score[] = $points;
}
$res[] = $score;
}
$val[] = $res;
}
return $val;
}