2017-07-04 10 views
1

私はプログラミングの初心者ですので、plzは私のばかげた質問を許しています。そう、我々はif文で状態を確認する場合、通常、それが明示的にtrueまたはfalseを生成できるものでなければなりません、私は($結果1)を意味している場合何をするかはかなりわからないif文の条件を確認してください

$result1 = mysqli_query($connection, 
"INSERT INTO Categories (CategoryName) VALUES ('Philosophy')"); 

if ($result1) { 
/* commit transaction */ 
mysqli_commit($connection); 
} 

:私はこのようなコードを見てきました(1 == 1)がif(true)と等価である場合など、if(true)またはif(false)である必要があります。ドキュメントから

  1. PHP: Expressions
  2. PHP: if
  3. PHP: Type Juggling

抜粋ifに関する声明:$の結果1自体は、真または偽

+5

これは、タイプキャスティングが行われる場所です。この場合、PHPは '$ result1'の結果をtrueまたはfalseのブール値にキャストします。 http://php.net/manual/en/language.types.type-juggling.php –

+0

を読んでください。mysqli_query()は、何か問題が生じた場合に常にfalseを返します。クエリが成功した場合は、falseでない結果を返します。したがって、この声明は真実です。 –

答えて

0

はを見てください生成donesn't:式(expr)は、ブール値に評価される。 expressionがTRUEと評価された場合、PHPはstatementを実行し、評価がFALSEならば無視します。

は、そして再び式についてのドキュメントから:

式を定義するための最も簡単なまだ最も正確な方法は「の値を持つもの」です。

ここで、$result1は値を持つ式です。したがって、式$result1はブール値に変換され、ifステートメントで使用されます。

関連する問題