Это не работает, потому что array_seach
ищет значения, а "Уильям" является ключом. Чтобы усложнить ситуацию, ваши значения и ключи заключены в одинарные кавычки во время цикла for
.
Вы хотели бы сделать что-то вроде этого:
if ( ! empty($userdb["'William'"]) )
{
// Echoes "'4'"
echo $userdb["'William'"];
}
// To find user ID "'4'"
// Outputs "'William'"
echo array_search("'4'", $userdb);
Если вы не хотите, чтобы все было заключено в одинарные кавычки , вам нужно изменить цикл for
следующим образом:
for($i=0;$i<count($fqlResult);$i++)
{
$userdbname=$fqlResult[$i]['name'];
$userdb[$userdbname]=$fqlResult[$i]['uid'];
}
if ( ! empty($userdb["William"]) )
{
// Outputs "4" (without the single quotes)
echo $userdb["William"];
}
// To find user ID "4" (without the single quotes)
// Outputs "William"
echo array_search('4', $userdb);