2011-09-05

PHP 에러 메시지 : Invalid argument supplied for foreach()

참고 페이지 : http://php.syntaxerrors.info/index.php?title=Invalid_argument_supplied_for_foreach

초기 정의만 잘 하면 문제 없는 줄 알았는데, 함수의 경우에는 분명 array()로 설정한 개체를 이용해서 function을 짜도 위 에러 메시지가 나오는 경우가 매우 흔하다. 참고 페이지의 설명을 보면 그건 내 착각인 듯... 매 실행문에 foreach()에 들어가는 array 변수가 공백은 아닌지 확인을 해 줘야 한다.

방법은 매우 간단하다. empty()문을 이용해서 array 변수가 비었는지 아닌지 확인해 주면 된다. 좀 불편하다는 생각은 들지만... 그래도 열심히 해 보련다.

만일 $a라는 변수를 array()로 정의해놓고 값들을 입력했다면
if(!empty($a)) {
  foreach ($a as $index => $value) {
    ... 해줄 작업들을 코딩한다...
  }
}

No comments:

Post a Comment