웹마스터 팁
PHP 5.4 대응 코딩(1) - stdClass
2014.04.29 11:25
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
댓글 0
제목 | 글쓴이 | 날짜 |
---|---|---|
회원 순위 공동순위 표시해서 뽑기(원리만 소개) | 라르게덴 | 2009.02.13 |
주민등록번호 입력 폼 추가 (1.1.5 기준) [39] | 개돌 | 2009.02.16 |
TortoiseSVN에서 특정 리비전 영역만 추출하기 [1] | ◀CGlink▶ | 2009.02.19 |
IIS에서 XE 설치 시 FTP 정보 등록에서 오류 조치 [4] | impre | 2009.02.20 |
플래너 최근문서(위젯)에 카테고리색 적용, Dday 적용, 지난 일정 출력 여부 조절 [7] | 주상태 | 2009.02.21 |
20메가 업로드 용량제한에 대한 이야기 ^^ [9] | 만쓰별(정만) | 2009.02.22 |
textarea 에디터를 사용하는 리플에서 태그 막기 [2] | 老姜君 | 2009.02.22 |
확장변수전용 권한설정 게시판스킨 미권한자에게 출력 (''깜박''오류?) 보고 | 0su | 2009.02.25 |
테스트용 아이디 탈퇴 막기 [1] | SMaker | 2009.02.26 |
lighttpd 에서 XE rewrite 기능 (.htaccess) 사용하기 [2] | msl2246 | 2009.02.28 |
첨부파일의 외부 무단 링크 차단하기(XE) 게시판설정 [7] | 왕초보왕따 | 2009.03.02 |
윈도우, 리눅스, 맥서버에서 이슈트래커 동작가능하게 하기 [1] | 뽀여니 | 2009.03.02 |
2003 + RWAPM + faceOff + IE7 = rewrite mod 에러 | neotec | 2009.03.03 |
Smarty 한글 메뉴얼 공개합니다. [1] | 미니미 | 2009.03.04 |
이슈 트래커 소유자 변경 시 그룹별 선택 기능 | 개돌 | 2009.03.05 |
사진이 떳다 사라지는 문제 해결법 [2] | 현진 | 2009.03.07 |
게시판 가로사이즈 줄이기....[초보만 클릭] [4] | 유팔복 | 2009.03.07 |
svn 업으로 xe 최신본 유지하기 [2] | e~세상쉼터 | 2009.03.08 |
Faceoff 버젼에서 확장변수 마음대로 배치하기 ^^ | 파파민 | 2009.03.13 |
게시물 가운데 정렬 문제 임시해결법 | 한신일 | 2009.03.15 |