簡體   English   中英

從mysql表獲取行到php數組

[英]Get rows from mysql table to php arrays

我怎樣才能獲得mysql表的每一行並將其放入php數組中? 我需要一個多維數組嗎? 所有這一切的目的是稍后在谷歌地圖上顯示一些點。

您需要從表中獲取所需的所有數據。 像這樣的東西會起作用:

$SQLCommand = "SELECT someFieldName FROM yourTableName";

這一行進入你的表並從你的表中獲取'someFieldName'中的數據。 如果要獲取多個列,可以在“someFieldName”中添加更多字段名稱。

$result = mysql_query($SQLCommand); // This line executes the MySQL query that you typed above

$yourArray = array(); // make a new array to hold all your data


$index = 0;
while($row = mysql_fetch_assoc($result)){ // loop to store the data in an associative array.
     $yourArray[$index] = $row;
     $index++;
}

上面的循環遍歷每一行並將其作為元素存儲在您創建的新數組中。 然后,您可以使用該信息執行任何操作,例如將其打印到屏幕上:

echo $row[theRowYouWant][someFieldName];

因此,如果$ theRowYouWant等於4,那么它將是來自第5行的數據(在本例中為'someFieldName')(記住,行從0開始!)。

$sql = "SELECT field1, field2, field3, .... FROM sometable";
$result = mysql_query($sql) or die(mysql_error());

$array = array();

while($row = mysql_fetch_assoc($result)) {
   $array[] = $row;
}

echo $array[1]['field2']; // display field2 value from 2nd row of result set.

其他答案確實有效 - 但是OP要求所有行,如果需要所有字段,那么將數據庫更改為更通用而不必更新php會更好

$query="SELECT * FROM table_name";

此外,返回數據也可以保持通用 - 我非常喜歡JSON格式,因為它會動態更新,並且可以從任何來源輕松提取。

while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) 
{
  echo json_encode($row);
}

這是你的代碼,使用它。 它被測試了。

$select=" YOUR SQL QUERY GOOES HERE";
$queryResult= mysql_query($select);

//DECLARE YOUR ARRAY WHERE YOU WILL KEEP YOUR RECORD SETS
$data_array=array();

//STORE ALL THE RECORD SETS IN THAT ARRAY 
while ($row = mysql_fetch_array($queryResult, MYSQL_ASSOC)) 
{
    array_push($data_array,$row);
}


mysql_free_result($queryResult);


//TEST TO SEE THE RESULT OF THE ARRAY 
echo '<pre>';
print_r($data_array);
echo '</pre>';

謝謝

你可以在沒有循環的情況下完成。 只需使用fetch_all命令即可

$sql     = 'SELECT someFieldName FROM yourTableName';
$result  = $db->query($sql);
$allRows = $result->fetch_all();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM