PHP8.x 에서 "Warning: Undefined array key ..." 를 만나면

· 3년 전 · 10964 · 17

Warning: Undefined array key "bo_mobile_subject" in .../lib/new_latest.lib.php on line 139

 

139: $list[$i]['bo_subject'] = ((G5_IS_MOBILE && $row['bo_mobile_subject']) ? $row['bo_mobile_subject'] : $row['bo_subject']);


=>  정의되지 않은 array key 변수 앞에 @ 를 붙이면 Warning 을 막을 수 있습니다.

$list[$i]['bo_subject'] = ((G5_IS_MOBILE && @$row['bo_mobile_subject']) ? @$row['bo_mobile_subject'] : @$row['bo_subject']);

 

참고 : https://www.php.net/manual/en/language.operators.errorcontrol.php

|

댓글 17개

유익한 정보입니다. 감사합니다.
@arari 감사합니다 ^^
@를 붙여서 에러를 건너띄는건 올바른 방법이 아닙니다.
더군다나 8.0부터는 해당기능이 Deprecate 상태이기때문에 나중버전에서는 삭제될수도 있습니다.
Warning

Prior to PHP 8.0.0, the value of the severity passed to the custom error handler was always 0 if the diagnostic was suppressed. This is no longer the case as of PHP 8.0.0.
@나리스 감사합니다 ^^
순정 G5 에서 없던 Warning 이 갑자기 생겨서 해결책으로 찾은건데 다른 좋은 방법이 있으면 알려주세요~
@욱이요 감사합니다 ^^

신고가 접수되어 자동으로 블라인드 된 댓글입니다. 원문을 보시려면 를 클릭하세요.

@라콩이 감사합니다 ^^
isset($row['bo_mobile_subject']) && $row['bo_mobile_subject']
@뻘미 감사합니다 ^^
제대로 코드 달아줬더니 누가 신고 먹이고 어이상실 ㅋㅋ
@mkmm 감사합니다 ^^
코드가 보이지 않는데 다시 올려주시면 다른분께 도움이 될듯합니다
null coalescing operator 를 사용하면 됩니다.
코드뒤에 ??'' 를 붙히면 됩니다.
$comp_uids = explode(',', $result['comp_uids'] ?? '');
감사합니다 덕분에 오류 해결했습니다
감사합니다 :)

하.. 이것 때문에 삽질하고 있었는데 감사합니다..

댓글을 작성하시려면 로그인이 필요합니다.

그누보드5 팁자료실

+
제목 글쓴이 날짜 조회
3년 전 조회 3,770
3년 전 조회 3,077
3년 전 조회 4,227
3년 전 조회 2,420
3년 전 조회 2,086
3년 전 조회 3,087
3년 전 조회 2,138
3년 전 조회 2,285
3년 전 조회 7,506
3년 전 조회 2,294
3년 전 조회 4,353
3년 전 조회 2,446
3년 전 조회 3,896
3년 전 조회 5,953
3년 전 조회 1.1만
3년 전 조회 3,961
3년 전 조회 2,794
3년 전 조회 4,120
3년 전 조회 5,564
3년 전 조회 2,374
3년 전 조회 2,700
3년 전 조회 3,321
3년 전 조회 3,813
3년 전 조회 2,872
3년 전 조회 1,975
3년 전 조회 2,552
3년 전 조회 2,302
3년 전 조회 2,169
3년 전 조회 3,449
3년 전 조회 4,514