issetを使うよりarray_key_existsで配列要素の有無を確認すべき。

よく配列に要素が入っているかを確認するのに
issetを使って以下のようにやりませんか?

これは、実はあんまり良くないらしいです。
結論から言うと、以下のようにしたほうが良い。

理由としては、配列の要素はあるが
値がnullの場合の挙動が違うから。

issetの場合は、値がnullだとfalse
array_key_existsの場合はtrue
と判定されるらしい。

純粋に配列要素が存在するかを知りたいなら
array_key_existsを使うほうが無難というわけ。

但し、速度に違いがあるらしい。
issetの方がarray_key_existsよりも3倍はやい
というエントリーを書いてる人もいたので
よっぽど急ぐときには変更したほうがいのかも。

とはいえ、そんなに処理速度が問題になることって
ないと思うからarray_key_existsでいいんじゃないかな。

というちょっとした話。

2013-02-15 | PHP, Web技術

  • ■ システムの科学
    システム創成学科のシミュレーションコース的にはバイブル的存在であったと認識しております(笑)社会システムや人工物をどのように設計していくかについて俯瞰的に書かれているので、自分の思考のフレームができます。
PAGE TOP ↑