我有一个问题:我使用以下查询从数据库中获取数组:
hour = [1,2,3];
现在,每个循环都需要$news = $db->QueryFetchArrayAll("SELECT login,id FROM `users` ORDER BY id DESC LIMIT 9");
$imgs = $db->QueryFetchArrayAll("SELECT usrpic,id FROM `users` ORDER BY id DESC LIMIT 9");
和$news['login']
。
例如:
$imgs['usrpic']
任何人都可以帮我解决这个问题吗?
答案 0 :(得分:0)
您可以使用next()
功能:http://php.net/manual/en/function.next.php
但不要忘记确保新闻和img具有相同的大小:
if(count($news) == count($imgs)) {
foreach($news as $new) {
$img = next($imgs);
<img style="border: 1px solid #8C0E0E;"src="'.$img['usrpic'].'" width="20" height="20" border="0" />
<img style="border: 1px solid #8C0E0E;"src="'.$new['login'].'" width="20" height="20" border="0" />
}
}
答案 1 :(得分:0)
如果这些是您的实际查询,您应该将它们合并为一个:
$users = $db->QueryFetchArrayAll("SELECT id, login, usrpic FROM `users` ORDER BY id DESC LIMIT 9");
然后迭代结果数组并输出图像:
foreach ($users as $user) {
echo "<img src='{$user['usrpic']}' ... />";
echo "<img src='{$user['login']}' ... />";
}
否则(保留原始查询),您应该确保$news
和$imgs
具有相同的长度,然后迭代其中一个:
$size = count($imgs);
for ($i = 0; $i < $size; $i++) {
$img = $imgs[$i];
$new = $news[$i];
echo "<img src='{$img['usrpic']}' ... />";
echo "<img src='{$new['login']}' ... />";
}