$test = '';
if(empty($test)){ $test = "not found";}
echo $test;
答えは$test
変数が空である
が、1つの下にもかかわらず、「見つかりません」ということになるような場合を想定しか与えない結果。
$test = ' ';
if(empty($test)){ $test = "not found";}
echo $test;
どのようにこれらの変数をPHPで空にすることができますか?
$test = '';
if(empty($test)){ $test = "not found";}
echo $test;
答えは$test
変数が空である
が、1つの下にもかかわらず、「見つかりません」ということになるような場合を想定しか与えない結果。
$test = ' ';
if(empty($test)){ $test = "not found";}
echo $test;
どのようにこれらの変数をPHPで空にすることができますか?
値を確認してから確認してください。
empty
は変数だけではなくあなたが渡している値をチェックするので、それをチェックする前にトリミングすることが重要である
$test = trim(' ');
if (empty($test)) { /* ... */ }
echo $test;
ええ、私は "トリム"機能を忘れていた...感謝の男 – alwyn
これをテストするために、独自の関数を作成します。
function my_empty($str) {
$str = trim($str);
return empty($str);
}
こと空のメソッドが既に提供しているものに加えて、空白だけを含むすべての文字列を空として扱います。
$test = ' '
は空ではありません。以下のものは と考えられる
空である:documentationで詳細から
- ""(空文字列)
- 0(整数として0)
- 0.0 (浮動小数点数として0)
- "0"(文字列として0)
- NULL
- FALSE
- array()(空の配列)
- var $ var; (変数が宣言されたが、クラス内の値なし)
これらの質問$test
だけ空白文字であれば、テストを見たい場合:
If string only contains spaces?
How to check if there are only spaces in string in PHP?
なぜ誰もがempty
を推薦しているのか分かりません。それからちょうどそれを残し、PHPSブールコンテキストハンドリングを使用することができます。
if (!strlen(trim($test))) {
文字列は、その長さが0の場合は空です:
しかし、実際にどの文字列のコンテンツの利用があるかどうかを確認
1つの空白文字を含む文字列の長さは1です。 – Gumbo