タグ

ブックマーク / d.hatena.ne.jp/is0me (1)

  • isset、in_array、array_key_existsの使い分け - Elecnotes

    PHPで、配列中に特定のキーが存在するか真偽値を取りたい場合、isset、in_array、array_key_existsという関数があります。in_arrayの速度は、O(n)なので、キーの数が増えるほど重くなり、issetとarray_key_existsは、O(1)なのでin_arrayよりもはるかに高速です。また、issetとarray_key_existsでは、NULLに対しての処理が違うようです。 $array_data = array('1' => NULL, '2' => 'test'); // FALSE isset($array_data['1']); // TRUE array_key_exists('1', $array_data); 指定したキーの値がNULLでも検知したい場合は、array_key_exists。それ以外は、issetを使うと良いと思います。i

    h6n
    h6n 2011/07/14
  • 1