我正在根据名称的文本输入搜索用户名,如下所示:
// find users
$users = explode(',', $_POST['to']);
$user_id_list = array();
print_r($users);
foreach ($users as $user)
{
$db->sqlquery("SELECT `user_id` FROM `users` WHERE `username` LIKE ?", array("%$user%"));
$user_id = $db->fetch();
$user_id_list[] = $user_id['user_id'];
}
print_r($user_id_list);
但它似乎只找到了第一个而不是第二个?我做错了什么吗?
PDOStatement::fetch
仅返回结果数据的下一行。您可以循环访问$db->fetchAll()
或使用while (($row = $db->fetch()) !== false)
访问所有返回的行。