Как проверить, есть ли значение в массиве
Короткий ответ
Функция in_array() ищет значение. Третий аргумент true включает строгое сравнение с учётом типа:
<?php
var_dump(in_array('green', ['red', 'green', 'blue'], true));Результат:
bool(true)Проверить ключ
Наличие ключа проверяют array_key_exists() и isset(). Разница в том, что isset() вернёт false, если значение равно null:
<?php
$user = ['name' => 'Anna', 'city' => null];
var_dump(array_key_exists('city', $user));
var_dump(isset($user['city']));Результат:
bool(true)
bool(false)Найти позицию
Если нужен ключ найденного элемента, используйте array_search():
<?php
var_dump(array_search('green', ['red', 'green', 'blue'], true));Результат:
int(1)Функции из этого ответа
- in_array — Проверяет, есть ли значение в массиве.
- array_search — Ищет значение в массиве и возвращает его ключ.