ページへ戻る
印刷
[PHP] if文の条件式内での代入・演算子優先順位でハマる
をテンプレートにして作成 ::
XOOPS マニア
UsersWiki
:nao-pon/blog/2013-01-09 をテンプレートにして作成
開始行:
#navi
RIGHT:&rsslink(../);
#boxdate
* [PHP] if文の条件式内での代入・演算子優先順位でハマる
RIGHT:&tag(PHP,プログラミング,覚書);
私は、PHP の if文の条件式の中で代入を行うことが多いです。
例えば、
#code(php){{
if ($a = 'hoge') {
var_dump($a);
}
}}
この結果は
string(4) "hoge"
です。
条件を増やしたくて次のようにしました。上記と同じ結果にな...
#code(php){{
if ($a = false || $a = 'hoge') {
var_dump($a);
}
}}
この結果は
bool(true)
となってしまいました。うほ!!
なんということでしょう。
これにハマってしまいました。
正解は
#code(php){{
if ($a = false or $a = 'hoge') {
var_dump($a);
}
}}
で、この結果は正しく
string(4) "hoge"
になりました。
詳しいことはよく分からないけど、[[PHP の演算子の優先順位:...
演算子の優先順位が "||" > "=" > "or" ということだそうです。
「これからも、気をつけないと」ということで、書き留めてお...
:参考|
[[PHPのif文の条件式での代入ではまった件 - kanonjiの日記:h...
RIGHT:&font(90%){&page_comments;};
#navi
終了行:
#navi
RIGHT:&rsslink(../);
#boxdate
* [PHP] if文の条件式内での代入・演算子優先順位でハマる
RIGHT:&tag(PHP,プログラミング,覚書);
私は、PHP の if文の条件式の中で代入を行うことが多いです。
例えば、
#code(php){{
if ($a = 'hoge') {
var_dump($a);
}
}}
この結果は
string(4) "hoge"
です。
条件を増やしたくて次のようにしました。上記と同じ結果にな...
#code(php){{
if ($a = false || $a = 'hoge') {
var_dump($a);
}
}}
この結果は
bool(true)
となってしまいました。うほ!!
なんということでしょう。
これにハマってしまいました。
正解は
#code(php){{
if ($a = false or $a = 'hoge') {
var_dump($a);
}
}}
で、この結果は正しく
string(4) "hoge"
になりました。
詳しいことはよく分からないけど、[[PHP の演算子の優先順位:...
演算子の優先順位が "||" > "=" > "or" ということだそうです。
「これからも、気をつけないと」ということで、書き留めてお...
:参考|
[[PHPのif文の条件式での代入ではまった件 - kanonjiの日記:h...
RIGHT:&font(90%){&page_comments;};
#navi
ページ名: