개발/php

[php] Undefined variable, Undefined index 에러 해결

반응형

 

php 에서 Undefined variable, Undefined index 에러메세지는 값(변수)이 제대로 정의되지 않아 발생하는 오류이다.

값이 없는 경우를 대비해서 아래처럼 미리 지정을 해주어야한다.

 

[에러 해결방법] isset()를 사용한 변수 선언

에러메세지가 Undefined variable : XX in /web/home/, Undefined index : XX in /web/home/  이런식으로 뒤에 어떤 변수에 대한 오류인지 뜰텐데, 해당 변수를 isset()함수를 사용하여 값을 정해줘야한다. 해당 변수에 대한 값이 있으면 해당값을 보여주고 아니면 공백으로 값을 전달할 수 있도록 해야한다.

$value = isset($_POST['value']) ? $_POST['value'] : '';

 

if문을 쓰는 경우에도 아래와 같이 isset 함수를 사용하여 값에 따라 if문이 작동되도록 하면 된다.

if(isset($row['ct_qty'])) {

//코드

}

 

 

isset()함수란?

변수가 선언되었는지를 알려주는 함수이고, null과 다른지 확인해주는 함수이다.

https://www.php.net/manual/en/function.isset.php

 

PHP: isset - Manual

If you are annoyed by the behavior of isset() concerning null values, here is a handy function for you. its similar to array_key_exists but, its a lot more flexible and can check for multiple array keys across multiple arrays.Not recursive!Tested on php 8.

www.php.net

 

 

 

반응형