PHP 버전 올리고 사이트가 안됩니다.
본문
기존 PHP 7.3 버전에서 8.3 버전으로 업그레이드 하고
그누보드 새로운 버전으로 패치를 하였는데요ㅠㅠ
원래 이렇게 정상적으로 나와야 하는데요
아래 처럼 오류 메세지가 나옵니다
오류메세지에 있는 63라인에 있는 코드는 다음과 같습니다.
<?php
for($i=0; $i<count($file); $i++){
if($file[$i]['source']){
$href = explode('sst',$file[$i]['href']);
$file[$i]['href'] = $href[0];
?>
답변 3
그누보드도 업그레이드 해야합니다.
아니면 다시 7.x 로 내리세요.
위 오류는
없는 배열을
echo $view['test'];
이렇게 출력하면
php 7.x 에서는 빈 배열일지라도 오류메시지가 나오지 않지만
8.x 에서는 엄격해져서 할당되어있지 않은 배열 호출시 에러가 나오게 됩니다.
<?php if(isset($view['test']) && $view['test']) echo $view['test']; ?>
php 8.x 에서는 이렇게 출력하세요.
기존 PHP 7.3에서는 이러한 경우 경고가 나타나지 않았지만,
PHP 8.0 이상부터는 존재하지 않는 배열 키에 접근하면 경고가 출력됩니다.
코드에서 $file 배열의 존재 여부를 명확히 하지 않은 상태에서
접근 시도가 이루어져서 나타난 현상이랍니다.
배열값에는 8.3부터는 '0' 이렇게 적용해 보세요