ホームページ  >  記事  >  バックエンド開発  >  分析: php の空と空の文字列の違い

分析: php の空と空の文字列の違い

WBOY
WBOYオリジナル
2016-07-25 08:57:07992ブラウズ
  1. 変数 空 is_null isset
  2. $a=”” true false true
  3. $a=null tr​​ue true false
  4. var $a true true false
  5. $a=array() true false true
  6. $a=false true false true
  7. $a=15 false false true
  8. $a=1 false false true
  9. $a=0 true false true
  10. $a=”0” true false true
  11. $a=”true” false false true
  12. $a=” false” false false true
コードをコピー

変数が " " または 0、または false と null である限り、empty はこれらの値である限り true を返します。isset は、この変数がある限り、変数は存在します。それが null または未割り当てでない場合、戻り結果は true になり、is_null は isset の逆の結果になります。

連絡先: $var は任意の型であると仮定します。 empty($var) が true の場合、(bool)($var) は false になります。逆に。 同じ、 is_null($var) が true の場合、 isset($var) は false になります。逆に。 もし: $i=$j+1; ここでは is_null($j) が true です

表示可能: isset は、未定義の状況を判断するために使用されます。 Empty は未定義か定義済みかを判断できますが、空か 0 です。 Is_null は isset の逆関数として見ることができます If ($expression) は空の逆関数と見なすことができます 判定内容が配列の場合、表には1件のみが記載されます。

誤解されやすい 2 つの状況を追加します。

  1. $b[]=null;
  2. $b[]=null;
  3. //配列は空ではないとみなされます
  4. $c[]=""; $ c[]="";
  5. //配列はすでに存在しており、空ではないと仮定します
  6. ?>
コードをコピー
空 (PHP 3、PHP 4、PHP 5) empty -- 変数が空かどうかを確認します。 説明する bool 空 (混合変数)

var が空またはゼロ以外の値の場合、empty() は FALSE を返します。つまり、 "" 、 0 、 "0" 、 NULL 、 FALSE 、 array() 、 var $var ; および属性のないオブジェクトは空とみなされ、 var が空の場合は TRUE が返されます。

変数が設定されていないときに警告が生成されないことに加えて、empty() は (ブール) var の反意語です。詳細については、「ブール値への変換」を参照してください。 empty() と isset() の単純な比較。

    $var = 0;
  1. //$var が空であるため、結果は true になります
  2. if (empty($var)) {
  3. echo '$var は 0 または設定されていませんall';
  4. }
  5. // $var が設定されているため、結果は false になります
  6. if (!isset($var)) {
  7. echo '$var はまったく設定されていません';
  8. }
  9. ?>
Copyコード
注: これは関数ではなく言語構造であるため、変数関数から呼び出すことはできません。 注: empty() は変数のみをテストします。変数ではないものをテストすると解析エラーが発生します。つまり、次のステートメントは機能しません: empty(addslashes($name))。 セット (PHP 3、PHP 4、PHP 5) isset -- 変数が設定されているかどうかを確認します 説明する bool isset ( 混合変数 [, 混合変数 [, ...]] )

var が存在する場合は TRUE を返し、それ以外の場合は FALSE を返します。 unset() を使用して変数が解放された場合、その変数は isset() ではなくなります。 isset() を使用して NULL に設定された変数をテストすると、FALSE が返されます。 NULL バイト (" 警告: isset() は変数でのみ使用できます。他の引数を渡すと解析エラーが発生するためです。定数が設定されているかどうかを検出したい場合は、define() 関数を使用します。 無効である (PHP 4 >= 4.0.4、PHP 5) is_null -- 変数が NULL かどうかを確認します 説明する bool is_null (混合変数)

var が null の場合は TRUE を返し、それ以外の場合は FALSE を返します。 NULL 型を見て、変数がどのような場合に NULL とみなされ、どのような場合にそうでないとみなされるかを確認します。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。