从 MySQL 查询中获取行数组?
Get an array of rows from a MySQL query?
我有这个代码...
$results_query = "SELECT * FROM profile WHERE string LIKE '%" . $search_deliminator . "%'";
$results_result = $database->query($results_query);
$result = mysql_fetch_array($results_result);
我想做的是提取 string 列包含我的搜索分隔符的所有行。此外,我想从行的每一列中获取值。
如何提取我需要的包含每一行的多维数组,以及每一行中每一列的每个值?
编辑:
我想为此做点什么...
while ($row = mysql_fetch_assoc($results_result)) {
$result[] = $row;
}
然后像这样回显每一列...
foreach ($result as $row) {
echo $row["0"];
}
要获得结果集的扁平数组,试试这个:
$result = array();
while ($row = mysql_fetch_assoc($results_result)) {
$result[$row['id']] = $row;
}
echo json_encode($result);
如果使用PDO,可以使用fetchAll()
方法:
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
对于 mysql 或 mysqli,您使用循环:
$rows = array();
while ($row = $stmt->fetch_assoc()) {
$rows[] = $row;
}
试试这个
$i=0;
while ($row = mysql_fetch_assoc($results_result)) {
$result[$i]["column1"] = $row["column1"];
$result[$i]["column2"] = $row["column2"];
$i++;
}
要显示输出,请使用:
foreach ($result as $row) {
echo $row["column1"];
echo $row["column2"];
}
我有这个代码...
$results_query = "SELECT * FROM profile WHERE string LIKE '%" . $search_deliminator . "%'";
$results_result = $database->query($results_query);
$result = mysql_fetch_array($results_result);
我想做的是提取 string 列包含我的搜索分隔符的所有行。此外,我想从行的每一列中获取值。
如何提取我需要的包含每一行的多维数组,以及每一行中每一列的每个值?
编辑:
我想为此做点什么...
while ($row = mysql_fetch_assoc($results_result)) {
$result[] = $row;
}
然后像这样回显每一列...
foreach ($result as $row) {
echo $row["0"];
}
要获得结果集的扁平数组,试试这个:
$result = array();
while ($row = mysql_fetch_assoc($results_result)) {
$result[$row['id']] = $row;
}
echo json_encode($result);
如果使用PDO,可以使用fetchAll()
方法:
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
对于 mysql 或 mysqli,您使用循环:
$rows = array();
while ($row = $stmt->fetch_assoc()) {
$rows[] = $row;
}
试试这个
$i=0;
while ($row = mysql_fetch_assoc($results_result)) {
$result[$i]["column1"] = $row["column1"];
$result[$i]["column2"] = $row["column2"];
$i++;
}
要显示输出,请使用:
foreach ($result as $row) {
echo $row["column1"];
echo $row["column2"];
}