이 오류는 어떻게 잡으면 될까요? 채택완료
로고를 보니 같은 오류가 주르륵 나열되어 있네요.
오류 내용은
</p>
<p>PHP Warning: count(): Parameter must be an array or an object that implements Countable in /var/www/html/lib/apms.lib.php on line 4018</p>
<p>
이며 apms.lib.php 4018라인의 내용은
4012 $tmp = array(); 4013 if($id && $multi) { 4014 $tmp[0] = $menu[0]; 4015 $z = 1; 4016 for ($i=1; $i < $cnt; $i++) { 4017 if($menu[$i]['gr_id'] == $id) { 4018 $sub_cnt = count($menu[$i]['sub']); 4019 for($j=0; $j < $sub_cnt;$j++) { 4020 $tmp[$z] = $menu[$i]['sub'][$j]; 4021 $z++; 4022 } 4023 break; 4024 } 4025 }
입니다...
어떻게 해결할 수 있을까요?
답변 3개
이렇게 수정해보세요.
4016 for ($i=1; $i < $cnt; $i++) {
4017 if($menu[$i]['gr_id'] == $id && $menu[$i]['sub']) {
4018 $sub_cnt = count($menu[$i]['sub']);
4019 for($j=0; $j < $sub_cnt;$j++) {
4020 $tmp[$z] = $menu[$i]['sub'][$j];
4021 $z++;
4022 }
4023 break;
4024 }
4025 }
댓글을 작성하려면 로그인이 필요합니다.
이 오류는 apms.lib.php 파일의 4018라인에서 발생한 것으로 보입니다. 해당 라인에서 count() 함수를 사용하고 있으며, 해당 함수의 매개변수로 배열이나 Countable 인터페이스를 구현한 객체가 전달되어야 합니다. 따라서 매개변수로 전달된 값이 위와 같은 형태가 아닌 배열이나 Countable 인터페이스를 구현한 객체가 되도록 수정해야 합니다. 또한, 매개변수로 전달된 값이 배열인 경우에도 배열의 크기가 0인 경우도 있으므로 그 경우도 처리해야 합니다.
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인