是否可以重新启动while循环?我目前在 foreach 循环中存在一个 while 循环,我需要 while 语句每次都从头开始。
$sql = mysqli_query($link, "SELECT * FROM products");
$products = array('Milk', 'Cheese', 'Eggs');
$i = 0;
$total = count($products); //This is in case I change the product list.
if($sql)
{
foreach($products as $v)
{
while($r = mysqli_fetch_assoc($sql))
{
if($r['Name'] == $v)
{
echo $r['Name'] . " - £" . $r['Price'];
break;
}
}
}
}
我的问题发生在代码运行并产生Milk
但Eggs
在数据库Cheese
中出现之前Eggs
,因此似乎永远找不到。如何重新启动 while 循环以强制代码从 sql 查询开始检查每个值?
已解决:使用散列来查询而不是循环 sql。