웹마스터 팁

PHP가 5.3에서 5.4로 업데이트 되면서 기존에 WARNING이 아니었던 내용이 WARNING, 즉 경고가 발생하는 부분이 있습니다. 여러 부분이 있겠지만 제일 보기 쉬운 오류로는 stdClass 관련 오류가 있겠습니다.(Creating default object from empty value)


PHP 5.3까지는 $aa->bb 와 같이 사용하면 자동으로 $aa를 stdClass로 초기화해 주었습니다.

하지만, 이것은 개발자가 오류를 찾기 힘들게 합니다.


예제를 하나 보겠습니다.

function setVars()
{
        if(otherFunc()) {
                $aa->bb='cc';
        }
        return $aa;
}

function MainFunc()
{
        $bb = setVars();
        $bb->bb=$bb->bb . 'dd';
}


위 함수에서 만약 otherFunc 함수가 0을 반환한다면 $aa는 stdClass로 초기화되지 않고, 개발자가 의도했던 결과(ccdd) 대신에 'dd'만이 저장될 것입니다.

하지만 어떠한 경고도 발생하지 않기에, 오류를 찾는 것에 시간이 오래 걸릴수 있겠죠.

물론 위 예제에서는 고의적으로 otherFunc의 반환값이 0일 경우를 생각하지 않았습니다만, 소스 코드가 커질 경우 살펴보기 어려워질 수 있겠죠.


따라서 무조건 WARNING을 끄기보다는, 왜 WARNING이 발생하는지 알아 보고, 적절한 위치에 stdClass 선언을 추가해 주는것이 좋을 것입니다.


외부 주소:

php 5.2 - 경고 미발생, 하지만 오작동중:http://yjsoft.bl.ee/error.php

php 5.3 - 역시 경고 미발생, 오작동중:http://yjsoft.pusku.com/error.php

php 5.4 - WARNING 발생:http://crecrew.pusku.com/error.php

php 5.4 - 수정이후 정상 동작:http://crecrew.pusku.com/normal.php

제목 글쓴이 날짜
1원팁) 톱메뉴를 제거하고 왼쪽 서브메뉴만 출력하는 방법 [2] file Gnee 2008.08.02
1.0.3 버전 이상부터 본문 내 이미지 자동 리사이징이 안되는 경우 [1] kirrie 2008.08.01
제로보드XE 설치 완료버튼 누르니까 My sql 관련 내용 나오던데요 [3] Naver™ 2008.07.30
코멘트를 달아야만 첨부파일 다운로드 할 수 있게 하기 [8] file 지오426 2008.07.29
제로보드XE에서 표 쉽게 만드는 방법.. [23] 청개구리00 2008.07.27
초간단! 게시물주소 클릭시 복사하기 ! [4] file gnee 2008.07.26
본문의 서명과 프로필이미지를 끌어올려보자 [11] file CL님 2008.07.22
로컬 설치 후 몇가지 문제점에 대해서 - 인덱싱. DB선택 등 서정일643 2008.07.22
로그인이 안되는 문제 [1] 젝망치 2008.07.21
관리자만 ip 보이게 하기 [10] 老姜君 2008.07.20
게시판(블로그)상단에 글쓰기버턴이나 링크넣기 [8] file 팔공산 2008.07.20
게시글 본문 좌, 우측에 div 내용 넣기(수정) [5] file 라르게덴 2008.07.18
winxp IE7 rwapm에서 한글이름파일 업로드 [7] file 공수래 2008.07.15
초보 헤메다가 팁//댓글기능 보이기 감추기 [5] 리히토 2008.07.15
자료 첨부 문제 단풍534 2008.07.15
초보 헤메다가 팁//검색기능 보이기 감추기 [3] file 리히토 2008.07.15
초보 헤메다가 팁//인쇄영역 확장변수 포함 [8] file 리히토 2008.07.14
에디터입력창 배경색상(이미지) 변경해보기 [5] [1] 팔공산 2008.07.13
업그레이드 쉽고,안전하게 하기(예제 포함해서 다시 올림) [2] file wannabewize 2008.07.13
게시판 가로조절(width) 및 가운데로 이동 태그 [4] 박상욱860 2008.07.12