programing

is_syslogx) vs $x === PHP에서는 null입니다.

goodsources 2022. 12. 9. 21:55
반응형

is_syslogx) vs $x === PHP에서는 null입니다.

중복 가능성:
is_syslogvar)와 ($var === null)의 차이점은 무엇입니까?

에는 2개한, PHP를 )가 .isset() )은 다음과 같습니다.is_null() ★★★★★★★★★★★★★★★★★」=== null적은 확인은 않았다.=== null 빠르지만했다.is_null()「」, 「Null」, 「Null」, 「Null」.그는 또한 수학 같은 것에 대해 이야기하기 시작했다.

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★.is_null()=== null이 권장됩니다.둘둘 중하 용용 용용 용? ???상상한 ?호 ?? ???★★는?isset()

으로, "는 ?isset() ★★is_null()isset()will do는 알림을 억제하기 때문에 실제로 정의되지 않은 변수에 대한 알림을 원하지 않는 한is_null()?? 되어 있다는 것을 요?그 때 변수가 초기화되어 있다는 것을 알면 어떨까요?

으로 마막,, 적?? to to to to를 하는 이유가 요?is_null()에 걸쳐서=== null비가 안안 ?? ?? ?? ??

기능에는 전혀 차이가 없습니다.is_null ★★★★★★★★★★★★★★★★★」=== null.

유일한 차이점은 이다.is_null가 되므로, 「」는 「」입니다.

  1. 약간 느리다(함수 콜오버헤드)
  2. 는 콜백으로할 수 콜백으로 사용할 수 있습니다).array_map('is_null', $array).

는 ★★★★★★★★★★★★★★★★★★★★★★★★★★★★.null === 수 있는 한 든지 와 false === ★★★★★★★★★★★★★★★★★」true ===크합니니다다

필요에 따라서, 다음의 코드를 확인할 수 있습니다.===( ) 및 ( )is_null)에서도 같은 IS_NULLdiscloss.discloss.case.


된 " " "isset()는 언어구조를 를 합니다.null.isset($undefinedVar)알림을 보내지 않습니다.

, 「 」, 「 」라고 하는 도 주의해 주세요.isset() 돌아오다true이 「 「」이 되어 .null오브젝트에서 즉가 - 를 하고 있는 offsetExists/__isset되는 메서드true이 '오프셋'인 null은 실제로 . 이 (사용할 때)를 사용하기 입니다.왜냐하면 사람들은array_key_existsoffsetExists/__isset).

다른 사람이 말한 것처럼, 사용하는 것과 시간 차이가 있습니다.===그리고.is_null()몇 가지 간단한 테스트를 실시하여 다음과 같은 결과를 얻었습니다.

<?php

//checking with ===
$a = array();
$time = microtime(true);
for($i=0;$i<10000;$i++) {
    if($a[$i] === null) {
         //do nothing
    }
}
echo 'Testing with === ', microtime(true) - $time, "\n";

//checking with is_null()
$time = microtime(true);
for($i=0;$i<10000;$i++) {
    if(is_null($a[$i])) {
         //do nothing
    }
}
echo 'Testing with is_null() ', microtime(true) - $time;
?>

결과를 제공하다

=== 0.0090668201446533으로 테스트

is_null() 0.0136840347534를 사용한 테스트

동작 중인 코드 참조

모두 제자리에 있지만, 정의되지 않은 변수 경고를 회피하는 것은 isset()뿐입니다.

$ php -a
Interactive shell

php > var_dump(is_null($a));
PHP Notice:  Undefined variable: a in php shell code on line 1
bool(true)
php > var_dump($a === null);
PHP Notice:  Undefined variable: a in php shell code on line 1
bool(true)
php > var_dump(isset($a));
bool(false)
php >

습할수록 좋다고는 말할 수 없습니다.is_null또는=== null다만, 사용시에는 주의해 주세요.isset어레이에 배치되어 있습니다.

$a = array('foo' => null);

var_dump(isset($a['foo'])); // false
var_dump(is_null($a['foo'])); // true
var_dump(array_key_exists('foo', $a)); // true

당신은 필요하다isset()변수가 정의되지 않은 경우.변수가 정의되어 있지 않으면 false가 반환됩니다.=== null(네, 그렇게 못생겼어요)오직.isset()그리고.empty()변수 또는 배열 요소가 존재하지 않으면 E_NOTICE를 올리지 마십시오.

와는 사실 차이가 없다.is_null그리고.=== null.생각합니다===훨씬 더 좋지만 예를 들어 를 사용해야 할 때call_user_func어떤 이유에서인지, 당신은 이 모든 것을is_null.

===그리고.is_null똑같아요.

코멘트에 의하면 is_null250ns밖에 느려지지 않습니다.오퍼레이터보다 기능이 느리기 때문이라고 생각합니다.

PHP 문서에서는 다음 사항에 대한 좋은 토론과 실험을 하고 있습니다.is_null, === null, isset특히 댓글 코너를 읽어주세요.

언급URL : https://stackoverflow.com/questions/8228837/is-nullx-vs-x-null-in-php

반응형