PHPコードを書くときに、誤ってif文の直後にセミコロン;
を置いてしまいました。例:if(); do、セミコロンは括弧の直後にありますか?
if($a > 1);
{
....
}
この場合、PHPでエラーが発生するはずですが、そうではありません。そのような文法には意味があるはずですが、私はそれが何であるか不思議です。
;
が追加されたときの状態は常に真であると思われますが、これはすべて意味がわかりません。
PHPコードを書くときに、誤ってif文の直後にセミコロン;
を置いてしまいました。例:if(); do、セミコロンは括弧の直後にありますか?
if($a > 1);
{
....
}
この場合、PHPでエラーが発生するはずですが、そうではありません。そのような文法には意味があるはずですが、私はそれが何であるか不思議です。
;
が追加されたときの状態は常に真であると思われますが、これはすべて意味がわかりません。
シングル;
"空の文" と
if($a > 1);
{
....
}
として読み取ることができますが、私は状況を見ることができるものについては
if($a > 1)
; // execute an empty statement if $a > 1
// then execute the following block of code.
{
....
}
に相当しますいつも真実であるように思われる
;
は、ブロックは関係なく、if文の実行されるので、それはそれだけのように思える
が追加されます。
セミコロンを追加すると、本質的に、中括弧の前にifブロックが終了します。それは真実ではありません、それはあなたがifで何もしないことです。あなたは括弧を持っていない場合
は、このようにそれについて考える:
if($a>1)
echo "Yes";
echo "No";
があれば内部の最初のセミコロンの前にすべてを行います。あなたの場合、最初のセミコロンの前には何もないので、何も起こりません。
これは神聖な目的を持っているのではなく、文法的な観点からは意味がある(または少なくとも構文解析の難しさを引き起こさない)からです。 'for($ a; $ b; $ c){}'として中括弧で書かれた方が好きですが、 'for'ループにはボディは必要ありません。 – Matthew