$useridtofind= 123;
$users=array();
while ($data = mysql_fetch_array ($result))
{
$userid = $data['userid'];
$age = $data['age'];
$gender = $data['gender'];
$dob = $data['dob'];
$users[$userid] => array(
'age'=> $age,
'gender'=> $gender,
'dob' => $dob
)
}
$useridtofind=123;
for($v=0; $v< count($users); $v++)
{
if($users[$v]== $useridtofind)
{
//how to go with grab value of age, gender, dob here?
}
}
2 に答える
2
すでにidを使用して配列にインデックスを付けています。
使用するだけです:
if (isset($users[$usertofind])) {
$user = $users[$usertofind];
echo $user['age'];
echo $user['dob'];
echo $user['gender'];
}
編集:issetチェックを追加し、同じ配列要素を参照する回数を減らしました
于 2011-02-11T01:21:41.620 に答える
0
配列内のユーザーのインデックスとしてユーザーIDを使用しているようです。この場合、for
ループを使用するのではなく、キーが配列内に存在するかどうかを確認するだけです。
$useridtofind = 123;
if (array_key_exists($useridtofind, $users)) {
$user = $users[$useridtofind];
echo "User exists: ", $user['age'], '/', $user['gender'], '/', $user['dob'];
} else {
echo "User doesn't exist";
}
于 2011-02-11T01:21:31.383 に答える