0
if ($_POST['foo']) {
    // bar
}

このことわざですか...if the $_POST['foo'] variable is a boolean, and is true...

それとも、このことわざですか... if the $_POST['foo'] variable isset...

それとも、このことわざですか... if the $_POST['foo'] variable is not null...

それとも、これらの組み合わせで言っているのでしょうか?それとも、これはまったく別のことを言っているのでしょうか。

4

3 に答える 3

8

その値の真偽をチェックしています。0、空、またはキーが存在しない場合は false です。キーが存在しない場合は、通知も発行されます。

于 2013-06-30T23:48:21.377 に答える
1

渡す変数のブール値を検証します。変数がブール値 true に等しい場合、空でないもの (配列など) または null ではない値 (ゼロでない数値) が含まれている場合は true になります。

PHP ドキュメント ( http://ca3.php.net/manual/en/language.types.boolean.php )からのいくつかの例を次に示します。

var_dump((bool) "");        // bool(false)
var_dump((bool) 1);         // bool(true)
var_dump((bool) -2);        // bool(true)
var_dump((bool) "foo");     // bool(true)
var_dump((bool) 2.3e5);     // bool(true)
var_dump((bool) array(12)); // bool(true)
var_dump((bool) array());   // bool(false)
var_dump((bool) "false");   // bool(true)
于 2013-06-30T23:58:33.610 に答える
0

一般に、条件ステートメントに含まれるものはすべて、ブール値である必要があるか、ブール値に評価される必要があります。

これは$_POST['foo']、変数の値がブール値であるかどうか、またはブール値に評価されるかどうかをチェックする場合にも当てはまります。および と等しくない文字列および数値は""0それぞれ として扱われtrue""および0(または空である) は として扱われfalseます。変数が未定義の場合、Undefined variable通知が表示され、ステートメントも評価されますfalse

于 2013-06-30T23:56:22.083 に答える