获取数据以获取我需要的ID数组
$STH = $DBH->prepare("SELECT char_id FROM att WHERE raid_id=:id AND spec=:spec AND status=:status");
$STH->bindValue(":id", $id);
$STH->bindValue(":spec", $curr_spec);
$STH->bindValue(":status", $curr_status);
$STH->setFetchMode(PDO::FETCH_ASSOC);
$STH->execute();
$temp1 = $STH->fetchAll();
此代码完美无缺。它返回正确的值。
$temporary =$temp1[0]["char_id"];
echo $temporary;
但是当我尝试从这个for循环中的数组中获取值时,它在echo中不返回任何内容。
for($i=0; $i < 2; $i++)
{
$tempor =$temp1[i]["char_id"];
echo $tempor;
//...
}
我花了很多时间,但我自己无法解决。如果可能的话,请帮助我。
答案 0 :(得分:4)
不是我将其更改为 $ i 。您正在访问未定义的常量,error_log会显示您发现错误。
$tempor =$temp1[i]["char_id"];
----------------^ change it to $i
提示:而不是使用进行循环,您可以尝试使用 foreach 循环并拥有一个只会循环前2条记录的计数器。