将数组推入php中的数组

时间:2012-02-12 15:59:02

标签: php arrays

我有这个片段,我试图生成随机数组数组的数组。

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编码非常陌生(一周后开始),我不知道这里。 我错过了什么?

1 个答案:

答案 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;
}