Особенности использования параметра strict при работе с функцией in_array() в PHP:
- Если параметр strict не установлен, то при поиске будет использовано нестрогое сравнение. php.ru Это значит, что функция будет проверять только значение, а не его тип. reintech.io Например, даже если значение в массиве — целое число, а искомое значение — строка, функция всё равно вернёт true, если значения совпадают. reintech.io
- Если параметр strict установлен в true, то функция in_array() также проверит соответствие типов параметра needle и соответствующего значения массива haystack. php.ru То есть функция вернёт true только в том случае, если и значение, и тип совпадают. reintech.io
Рекомендуется использовать строгий режим через флаг strict, чтобы избежать неожиданного поведения в случаях, когда невозможно достоверно установить типы значений. www.php.net