Как получить значение из двух массивов по определенному индексу? У меня есть массив $usernames
и массив $passwords
. У меня также есть переменные, называемые $username
и $password
(которые являются введенными пользователем и паролем).Значение из массива по индексу (PHP)
Я хочу, чтобы получить индекс $username
в $usernames
и сравнить его с индексом $password
в $passwords
. Если они совпадают, имя пользователя и пароль верны. Если нет, они неверны.
Я знаю, что массив, вероятно, не самый лучший способ сделать это, но его только для 5 человек, и на самом деле он не должен быть совершенно секретным, просто защитите паролем.
Я попытался:
<?php
$usernames = array("test1", "test2");
$passwords = array("password1", "password2");
$list = array($usernames, $passwords);
if (in_array($userName, $usernames)) {
$userNameIndex = returnIndex($usernames, $userName);
$passWordIndex = returnIndex($passwords, $password);
echo("it says:<br />");
echo($userNameIndex . " and password: " . $passWordIndex);
} else {
echo("Not In Array");
}
?>
<?php
function returnIndex($array, $value) {
$ar = $array;
$searchValue = $value;
for($i=0; $i< count($ar); $i++) {
if($ar[i] == $searchValue) return i;
}
}
?>
Однако он возвращает
он говорит:
и пароль: я
** Ответ: ** Прочтите Руководство. – rdlowrey
http: // php.net/array – hakre
Сохраните себе много работы и вместо этого используйте ассоциативный массив: '$ users = array (" user1 "=>" password1 "," user2 "=>" password2 ");' затем проверьте с помощью 'if ($ users [$ username] == $ password) {... '. –