변수처리 isset

(PHP 4, PHP 5, PHP 7, PHP 8)

isset — 변수가 선언되었고 null과 다른지 확인


설명

isset(mixed $var, mixed ...$vars): bool

변수가 설정된 것으로 간주되는지 확인합니다. 이는 변수가 선언되고 null이 아닌 경우를 의미합니다.

변수가 unset() 함수로 설정 해제된 경우 더 이상 설정된 것으로 간주되지 않습니다.

isset()null에 할당된 변수를 검사할 때 false를 반환합니다. 또한 null 문자("\0")는 PHP null 상수와 동일하지 않습니다.

여러 매개변수가 제공되면 모든 매개변수가 설정된 것으로 간주되는 경우에만 isset()true를 반환합니다. 평가는 왼쪽에서 오른쪽으로 진행되며 설정되지 않은 변수가 발생하는 즉시 중지됩니다.


매개변수

var
확인할 변수입니다.
vars
추가 변수.

반환 값

var가 존재하고 null이 아닌 값이 있으면 true를 반환합니다. 그렇지 않으면 false.


Examples

예제 #1 isset() 예제

                  
<?php

$var = '';

// This will evaluate to TRUE so the text will be printed.
if (isset($var)) {
    echo "This var is set so I will print.";
}

// In the next examples we'll use var_dump to output
// the return value of isset().

$a = "test";
$b = "anothertest";

var_dump(isset($a));      // TRUE
var_dump(isset($a, $b)); // TRUE

unset ($a);

var_dump(isset($a));     // FALSE
var_dump(isset($a, $b)); // FALSE

$foo = NULL;
var_dump(isset($foo));   // FALSE

?>
                  
                

이것은 배열의 요소에서도 작동합니다.

                  
<?php

$a = array ('test' => 1, 'hello' => NULL, 'pie' => array('a' => 'apple'));

var_dump(isset($a['test']));            // TRUE
var_dump(isset($a['foo']));             // FALSE
var_dump(isset($a['hello']));           // FALSE

// The key 'hello' equals NULL so is considered unset
// If you want to check for NULL key values then try:
var_dump(array_key_exists('hello', $a)); // TRUE

// Checking deeper array values
var_dump(isset($a['pie']['a']));        // TRUE
var_dump(isset($a['pie']['b']));        // FALSE
var_dump(isset($a['cake']['a']['b']));  // FALSE

?>
                  
                

예제 #2 문자열 오프셋의 isset()

                  
<?php
$expected_array_got_string = 'somestring';
var_dump(isset($expected_array_got_string['some_key']));
var_dump(isset($expected_array_got_string[0]));
var_dump(isset($expected_array_got_string['0']));
var_dump(isset($expected_array_got_string[0.5]));
var_dump(isset($expected_array_got_string['0.5']));
var_dump(isset($expected_array_got_string['0 Mostel']));
?>
                  
                

위의 예는 다음을 출력합니다.

bool(false)
bool(true)
bool(true)
bool(true)
bool(false)
bool(false)
                

메모

경고 isset()은 변수에 대해서만 작동합니다. 다른 것을 전달하면 구문 분석 오류가 발생하기 때문입니다. 상수가 설정되었는지 확인하려면 defined() 함수를 사용하십시오.

참고: 이것은 함수가 아니라 언어 구조이기 때문에 변수 함수명명된 인수를 사용하여 호출할 수 없습니다.

참고: 접근할 수 없는 객체 속성에 isset()을 사용할 때 선언된 경우 __isset() 오버로딩 메서드가 호출됩니다.


기타