这是我的代码
$items = array(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17);
$numCols = 4;
$result = ArrayVals($items,$numCols);
echo $result;
function ArrayVals($items,$numCols) {
$minRow = floor(count($items)/$numCols);
$remaining = count($items) % $numCols;
$cCount = array();
for ($i = 0;$i<$numCols;$i++) {
if ($i < $remaining) {
array_push($cCount,$minRow+1);
} else {
array_push($colCount,$minRow);
}
}
$listString = '';
$count = 0;
for ($i = 0;$i<count($cCount);$i++) {
$listString = $listString . "<ul>";
for ($j = 0;$j<$cCount[$i];$j++) {
$listString = $listString . '<li>' . $items[$count] . '</li>';
$count = $count + 1;
}
$listString = $listString . '</ul>';
}
return $listString;
我正在接受
警告:array_push()期望参数1为数组,null中给出null 第20行的C:\ UniServer \ www \ RnD \ Test2 \ t2.php
我应该如何解决呢
答案 0 :(得分:1)
在for循环之前将 $ colCount 初始化为 array()
$colCount=array();
答案 1 :(得分:0)
变量$colCount
未在其范围内定义。在$colCount
function ArrayVals().
答案 2 :(得分:0)
$colCount
未定义。 array_push
期望第一个参数是一个数组。