일반적으로 정의되지 않은 인덱스 문제는 이 값이 없는 배열로 인해 발생합니다. 배열은 연관 배열과 인덱스 배열로 구분됩니다. 인덱스 배열은 숫자 첨자입니다.
$POST['id']는 $POST 배열에 아래 첨자 키 값 id가 있는 값이 포함되어 있지 않기 때문에 정의되지 않은 인덱스를 보고합니다. (추천 학습: PHP 비디오 튜토리얼)
해결 방법:
배열에 아래 첨자 키 값 id가 포함되어 있는지 확인하세요. 그렇지 않은 경우 오류 메시지가 반환됩니다. 가장 간단한 방법은 무엇입니까? isset($POST['id'])와 같은 함수 isset을 사용하여 판단합니다. 존재하면 true를 반환하고, 그렇지 않으면 false를 반환합니다.
3차 판단 방법, 존재하지 않으면 기본값을 제공합니다. $POST['id' ] = isset($POST['id'])?$POST['id']:"1";
이 알림은 사용자(또는 PHP)가 정의되지 않은 배열 인덱스입니다.
문제 해결 방법:
인덱스에 액세스하기 전에 인덱스가 있는지 확인하세요. 이를 위해 isset() 또는 array_key_exists()를 사용할 수 있습니다.
//isset()$value = isset($array['my_index']) ? $array['my_index'] : ''; //array_key_exists()$value = array_key_exists('my_index', $array) ? $array['my_index'] : '';
언어 구성 list()는 존재하지 않는 배열 인덱스에 액세스하려고 할 때 다음을 생성할 수 있습니다.
list($a, $b) = array(0 => 'a');//orlist($one, $two) = explode(',', 'test string');
두 개의 변수가 두 개의 배열 요소에 액세스하는 데 사용됩니다. 인덱스 0에는 배열 요소가 하나만 있으므로 다음이 생성됩니다.
참고: 정의되지 않은 오프셋: 1
$_POST/ $_GET/ $_SESSION 변수
$_POST를 사용할 때 위의 참고 사항 종종 $_GET 또는 $_세션.
$_POST, $_GET의 경우 인덱스를 사용하기 전에 인덱스가 존재하는지 확인하면 됩니다. $_SESSION 때문에 session_start()로 시작해야 하며 인덱스도 존재하는지 확인해야 합니다.
위 내용은 PHP에서 정의되지 않은 인덱스를 해결하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!