В PHP каждый элемент в массиве состоит из двух частей: ключ и значение .
Если вы вручную не укажете, какие ключи вы хотите прикрепить к каждому значению, PHP присваивает каждому элементу числовой индекс, начинающийся с 0 и увеличивающийся на 1.
Так что разница между
array('first','second')
и
array('first'=>1,'second'=>4)
означает, что первый не имеет пользовательских ключей. (На самом деле это ключи 0 и 1)
Если бы вы делали print_r()
на первом, то это было бы что-то вроде
Array {
[0] => "first",
[1] => "second"
}
тогда как второй будет выглядеть
Array {
["first"] => 1,
["second"] => 2
}
Итак, чтобы проверить, существует ли ключ «first», вы должны использовать
array_key_exists('first',$search_array);
чтобы проверить, существует ли значение"first", вы должны использовать
in_array('first',$search_array);