<code>$hasVideo = $details['data']['topic']['has_video'];</code>
예를 들어 이 코드에서는 이전 배열 'data'와 'topic'에 값이 언제 있는지 알 수 없으므로 할당 작업을 수행하기 전에 값이 있는지 판단해야 합니다. 값을 할당할 때 오류를 피하기 위해 간단한 판단을 합니까?
비어있는 방식만 사용한다면 다음과 같이 레이어별로 판단을 내려야 할 것 같습니다.
<code>if(!empty($details)&&!empty($details['data'])&&!empty($details['data']['topic'])&&!empty($details['data']['topic']['has_video']))</code>
더 쉬운 방법이 있나요? 또는 값을 한 번에 얻을 수 있는지 확인하기 위해 공개 메서드를 직접 작성할 수도 있습니다.
<code>$hasVideo = $details['data']['topic']['has_video'];</code>
예를 들어 이 코드에서는 이전 배열 'data'와 'topic'에 값이 언제 있는지 알 수 없으므로 할당 작업을 수행하기 전에 값이 있는지 판단해야 합니다. 값을 할당할 때 오류를 피하기 위해 간단한 판단을 합니까?
비어있는 방식만 사용한다면 다음과 같이 레이어별로 판단을 내려야 할 것 같습니다.
<code>if(!empty($details)&&!empty($details['data'])&&!empty($details['data']['topic'])&&!empty($details['data']['topic']['has_video']))</code>
더 쉬운 방법이 있나요? 또는 값을 한 번에 얻을 수 있는지 확인하기 위해 공개 메서드를 직접 작성할 수도 있습니다.
isset
을 이용해 판단해 보세요.
<code class="php">$hasVideo = isset($details['data']['topic']['has_video']) ? $details['data']['topic']['has_video'] : $something_else;</code>
어쩌면 제가 실수를 했을 수도 있고, 동료들에게 속았을 수도 있습니다. . 사실은 존재함과 비어 있음을 판단할 수 있다. .
작은 테스트를 해보니 오류가 보고되지 않는 것으로 나타났습니다.
<code><?php $test = array( test1=>array( test2=>array( test3=>array( test4=>123, ), ), ), ); var_dump(isset($test['test1']['test2']['test3']['test4']['test4']['test4']['test4'])); var_dump(!empty($test['test1']['test2']['test3']['test4']['test4']['test4']['test4'])); ?></code>
카운트나 전류를 사용하여 판단하면 다차원 감지가 반복됩니다.