如何使用SQL WHERE IN(x,y)
语句返回的数据与PHP?
$sqlquery = "SELECT * FROM schedules WHERE userid IN ('35','101','45')";
if ($test_stmt=$mysqli->prepare($sqlquery)) { //Get all data in schedule row
$test_stmt->execute(); //Execute the prepared query
$test_stmt->store_result(); //Store result
$test_stmt->fetch();
do something...
}
else {
return null;
}
}
SQL查询返回正确的三个表行,我只是不确定如何使用PHP访问它们。
如何创建一个数组来存储查询返回的值?或者有更好的方法来存储这些数据以便以后进行操作吗?
由于
答案 0 :(得分:2)
最常见的方法是通过类似于以下内容的循环:
$results=array();
while($row=$test_stmt->fetch())
{
$results[]=$row;
}
这会将行插入结果变量,即数组。在循环结束时,数组将包含查询返回的所有内容的副本。
您还可以在结果中选择对特定列执行的操作,如下所示:
$results=array();
while($row=$test_stmt->fetch())
{
$results[]['ID']=$row['ID'];
}
这假设结果中有一个名为“ID”的列。
答案 1 :(得分:0)
//$test_stmt->store_result(); //not needed
$rows = $test_stmt->fetchAll(PDO::FETCH_ASSOC); //or other fetch mode
print_r($rows); //$rows is an array of rows you can loop through