ホームページ  >  記事  >  バックエンド開発  >  PHP の isset() 関数と empty() 関数の違いは何ですか?

PHP の isset() 関数と empty() 関数の違いは何ですか?

不言
不言転載
2019-03-13 13:59:042337ブラウズ

この記事でわかることは、PHP の isset() 関数と empty() 関数の違いについてです。一定の参考値があるので、困っている友達は参考にしていただければ幸いです。

多くの人は高度なテクノロジーのことだけを考えていて、基礎知識さえ十分にありません。パニックに陥るほど簡単な質問をされるのはばかげています。右!自分のことを話しているんです!続いて、簡単な知識のまとめをしていきます。

1. isset() の定義

変数が設定されているか、NULL ではないかを検出します

<?php

$var = &#39;&#39;;

// 结果为 TRUE,所以后边的文本将被打印出来。
if (isset($var)) {
    echo "This var is set so I will print.";
}

// 在后边的例子中,我们将使用 var_dump 输出 isset() 的返回值。
// 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

?>

Result

This var is set so I will print.bool(true)
bool(true)
bool(false)
bool(false)
bool(false)

2. empty() の定義

==変数が空かどうかを確認する==

次のものが空とみなされます:

"" (空の文字列)

0 (整数としての 0)

0.0 (浮動小数点数としての 0)

"0" (として文字列の文字 0)

NULL

FALSE

array() (空の配列)

$var; (1 つは宣言されていますが、何もありません) value 変数)

3. isset() と empty()の比較

$var = 0;
if (empty($var)) {
    echo 1;
}//1
if (isset($var)) {
    echo 2;
}//1

4. 0、''、null の等価関係

if('' == null && '' == 0 && null ==  0 && 0 =='0') 
echo true;
//返回结果  1;

if('' == '0' || null == '0' ) 
echo true;
//返回结果 untitled;

結論: ==' '、null、0、'0' は互いに等しい; ''、null は '0' と等しくない==

以上がPHP の isset() 関数と empty() 関数の違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はsegmentfault.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。