如何在PHP会话中存储mySQLi数组?我使用while循环来渲染数组但是我应该如何将它们分配给会话?
这是我的尝试:
while($row = mysqli_fetch_array($sqlCommand)){
$id = $row["id"];
$product_name = $row["product_name"];
$price = $row["price"];
$all_list .= "id= $id, product name = $product_name, price = $price \n";
}
/*only work if only LIMIT 1*/
//$_SESSION["id"] = $id;
//$_SESSION["product_name"] = $product_name;
//$_SESSION["price"] = $price;
我还尝试为每个数组分配会话变量,但只有在结果限制为1时才有效。在我的情况下,结果至少是一个或多个。我怎么能这样做?
答案 0 :(得分:3)
while($row = mysqli_fetch_array($sqlCommand)){
$_SESSION[]['id'] = $row["id"];
$_SESSION[]['product_name'] = $row["product_name"];
$_SESSION[]['price'] = $row["price"];
$_SESSION[]['all_list'] .= "id= $id, product name = $product_name, price = $price \n";
}
将会话中的所有行存储为数组。
要查看结果,请在while循环后使用以下行:var_dump($_SESSION);
要访问特定值(例如id
),请使用以下代码:echo $_SESSION[0]['id'];