- ベストアンサー
evalの中でNULLを使用して比較したい
PHP5.2.4を使用しています。 次のようなevalを使って式を評価させたいのですが、 NULLを比較させると Parse error: syntax error, unexpected T_IS_NOT_EQUAL in test.php(11) : eval()'d code on line 2 というようなエラーがでてしまいます。 どうすればevalの中でこの条件式を成立させることができるのでしょうか? $left = NULL; $right = 1; $str = ' if('.$left.' != '.$right.') { print "not<br>\n"; } '; eval($str);
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
$left = 'NULL' では? NULLの代入が,クォートを忘れてしまっているので leftが文字列の’NULL’ではなく,空文字列になってしまっています. strの中身を表示したら if( != 1) { print "not<br>\n"; } とかになっているんじゃないですかね?
その他の回答 (1)
- yambejp
- ベストアンサー率51% (3827/7415)
回答No.2
if("'.$left.'" != "'.$right.'") でいけそうですが、evalをつかってやるような処理じゃないですね
質問者
お礼
ご返答ありがとうございます。 >evalをつかってやるような処理じゃないですね たしかに
お礼
ご返答ありがとうございます。 なるほど、空でしたか・・・ クォートを付加したらできました。ありがとうございます。