Ошибка PHP 7.4. Попытка доступа к смещению массива по значению типа bool в

введите здесь описание изображения

введите здесь описание изображения

линия 25

if($respuesta["usuario"] == $_POST["ingUsuario"] && $respuesta["password"]== $encriptar){

person luis fernando    schedule 22.10.2020    source источник
comment
Никогда не храните пароли в открытом виде или с использованием MD5/SHA1! Сохраняйте только хэши паролей, созданные с помощью password_hash(), который затем можно проверить с помощью password_verify(). Взгляните на этот пост: Как использовать password_hash и узнайте больше о bcrypt и хэширование паролей в PHP   -  person Dharman    schedule 24.11.2020
comment
Отвечает ли это на ваш вопрос? Попытка доступа к массиву смещение значения типа bool в PHP 7.4   -  person Dharman    schedule 24.11.2020


Ответы (1)


Начиная с PHP 7.4 он будет генерировать уведомление при попытке использовать значения типа null, bool, int, float или resource в качестве массива.

https://www.php.net/manual/en/migration74.incompatible.php#migration74.incompatible.core.non-array-access

Доступ в стиле массива к не-массивам

Попытка использовать значения типа null, bool, int, float или resource в качестве массива (например, $null[key]) теперь будет генерировать уведомление.

Чтобы избежать уведомления, вы можете сначала проверить, является ли $respuesta массивом:

if(is_array($respuesta) && $respuesta["usuario"] == $_POST["ingUsuario"] && $respuesta["password"]== $encriptar){
person FlavioS    schedule 22.10.2020