開発するときに、いくつかの技術的な詳細を忘れてしまう可能性があります。これらの詳細は、Web サイトへのインジェクション、Web サイトのクラッシュなどの重大な結果を引き起こす可能性があります。ここで、遭遇する可能性のある PHP の「罠」をいくつかまとめてみましょう。
トラップ 1: empty()
最新の公式 Web サイトのマニュアルには、これに関する特別な手順が記載されています:
注:
言い換えると、次のコードは有効になりません: empty(trim($name))。 代わりに、trim($name) == false.
を使用する必要があります。
私が最後にこのエラーに遭遇したのは、Phalcon で開発していたときでした。これは、最初は原因不明の 503 エラーが報告されていましたが、その原因は、empty の誤った使用でした。もちろん、PHP 5.5 以降、empty はこの記述方法をサポートしています。
トラップ 2: in_array()
この問題を発見したのは、Web サイトに SQL が挿入されていたためです。幸いなことに、テスト中に発見され、重大な影響はありませんでした。
in_array() 関数の使用に関しては、他にも注意すべき点があります。PHP マニュアルには、この関数の「奇妙な」動作を説明するためにネットユーザーによって提供された次のような例が多数あります。 リーリー
安全上の理由から、次の方法で判断することをお勧めします:リーリー
興味がありそうな記事: