Loading...
PHP/MySQL | Проверка наличия посредством массива
Можно ли проверять наличие переменных при помощи массива?

if(filter_has_var(INPUT_COOKIE, ['login', 'password'])){
$ID = assoc('select * from users where login = :ln and password = :pd limit 1', [':ln'=>$_COOKIE['login'], ':pd'=>$_COOKIE['password']]);
}

Или нужно прописывать отдельно проверку наличия каждой?

if(filter_has_var(INPUT_COOKIE, 'login') && filter_has_var(INPUT_COOKIE, 'password')){
$ID = assoc('select * from users where login = :ln and password = :pd limit 1', [':ln'=>$_COOKIE['login'], ':pd'=>$_COOKIE['password']]);
}

Как правильнее?
но зачем такие сложности?
isset($_COOKIE['login'], $_COOKIE['password'])
isset() принимает в качестве аргументов - несколько переменных, если хотя бы одна не существует или равна NULL - вернёт false
Mobiaaa (19.11.2016 в 15:07)
но зачем такие сложности?
isset($_COOKIE['login'], $_COOKIE['password'])
isset() принимает в качестве аргументов - несколько переменных, если хотя бы одна не существует или равна NULL - вернёт false


ругается IDE предлагает не использовать isset и юзать filter_input или filter_has_var
________
посл. ред. 19.11.2016 в 15:12; всего 1 раз(а); by Вилы_Выкидные
Вилы_Выкидные, :)
Но если придерживаться логике IDE, тогда только по отдельности проверять
Либо писать свою функцию, которая будет принимать массив, и уже в цикле перебирать каждое значение
Mobiaaa (19.11.2016 в 15:14)
Вилы_Выкидные, :)
Но если придерживаться логике IDE, тогда только по отдельности проверять
Либо писать свою функцию, которая будет принимать массив, и уже в цикле перебирать каждое значение


да мне бы поменьше писанины )))

в принципе IDE это не как ошибку выдаёт а как информационное сообщение
Вилы_Выкидные (19.11.2016 в 15:19)
Mobiaaa (19.11.2016 в 15:14)
Вилы_Выкидные, :)
Но если придерживаться логике IDE, тогда только по отдельности проверять
Либо писать свою функцию, которая будет принимать массив, и уже в цикле перебирать каждое значение


да мне бы поменьше писанины )))

в принципе IDE это не как ошибку выдаёт а как информационное сообщение

Ну и вот, юзай isset как Дима предложил и вс
isset() не возвращает TRUE для ключей массива, указывающих на NULL, а array_key_exists() возвращает.
http://php.net/manual/ru/function.array-key-exists.php
Онлайн: 3
Время:
Gen. 0.1025
(c) Bym.Guru 2010-2025