私はかなり長い間PHPで作業してきましたが、これは常に私にとって謎でした。変数の前に感嘆符(負の符号)を正しく使用していました。
_!$var
_は何を示していますか? var false
、空、設定されていないなどですか?
これが私が学ぶ必要があるいくつかの例です...
例1:
_$string = 'hello';
$hello = (!empty($string)) ? $string : '';
if (!$hello)
{
die('Variable hello is empty');
}
_
この例は有効ですか? _$string
_が空の場合、ifステートメントは実際に機能しますか?
例2:
_$int = 5;
$count = (!empty($int)) ? $int : 0;
// Note the positive check here
if ($count)
{
die('Variable count was not empty');
}
_
この例は有効でしょうか?
上記の例を使用することはありません。これらのif ($var)
をブール値のみを持つ変数に制限します。 if ($var)
ステートメントの使用を広げることができるように、これらの例が有効かどうかを知る必要があります。彼らは本当にきれいに見えます。
ありがとう。
if(! $a)
はif($a == false)
と同じです。また、==
演算子を使用する場合は、型変換が行われることを考慮に入れる必要があります。
詳細については、「== "セクションとの大まかな比較 ここ 」を参照してください。そこから、文字列「0」と「」はFALSEに等しくなります("0"==false
はTRUEであり、""==false
もTRUEです)。
投稿例について:
例1
[。
例2
それが動作します
!
否定します。 trueはfalseになり、falseと評価されたものはすべてtrueになります。
PHPを書いていて、すべての演算子を心から知っているわけではない場合..心から理解するまで、1行のコードを記述しないでください。
http://php.net/manual/en/language.operators.php
これらは絶対的な基本です。
ブールテスターです。空または偽。
これはnot
ブール演算子です。詳細については、 PHP手動 を参照してください。