2010-08-25 133 views
2

我想知道如何將字符串變量添加到當前數組。例如,我有一個名爲$finalarray的數組。然後我有一個循環,每次運行都會增加一個值。基本上:PHP - 將字符串添加到數組

$finalarray = $results_array + string; 

一個非常基本的結構。我正在使用這個MySQL,以便我可以檢索列的最後一個數組。

$query = "SELECT * FROM table"; 
$showresult = mysql_query($query); 

while($results_array = mysql_fetch_assoc($showresult)) 
{ 
    $finalarray = $finalarray + $results_array["column"]; 
} 

編輯:

目前使用此代碼(仍然沒有工作):

$query = 「SELECT * FROM table」; 
$showresult = mysql_query($query); 

while($results_array = mysql_fetch_assoc($showresult)) 
{ 
    $finalarray[] = $results_array["name"]; 
} 

echo $finalarray; 

的問題是,它只是說, 「陣列」

感謝,

凱文

回答

4

回答你edited問題:

你不能只使用單打印一張echo整個數組內容。相反

使用

var_dump($finalarray); 

print_r($finalarray); 

打印數組內容..

4

使用[]表示法。 +用於聯合兩個數組。

$array = array('foo'); 

$array[] = 'bar'. 

// $array == array('foo', 'bar') 
+0

如果我添加了兩個支架,我的陣列是一個列表一遍又一遍地說「數組」的字符串。 – lab12 2010-08-25 03:12:18

+0

@Kevin您能向我們展示發生這種事情的實際代碼嗎? – deceze 2010-08-25 03:14:10

+0

在問題中編輯。 – lab12 2010-08-25 03:50:46

1

看看這個

$query = "SELECT * FROM table"; 
$showresult = mysql_query($query); 

while($results_array = mysql_fetch_assoc($showresult)) 
{ 
    $finalarray[] = $results_array["column"]; 
} 

// Add X to the end of the array 
$finalarray[] = "X"; 
3

可以使用功能array_push[]符號:

array_push($array, 'hi'); 

$array[] = 'hi'; 
+0

這段代碼實際在做什麼?我不明白爲什麼要將「hi」推到數組中,但是然後將hi分配給數組的末尾。你不是基本上加了兩次嗎? – NDEIGU 2015-05-25 12:14:24

0

Codaddict是正確的。您正在尋找輸出添加到數組的最後一個元素。

echo end($final_array); 

這將移動數組的指針添加到它的最後一個元素,然後輸出它。既然你要添加的元素以這種方式排列...

$finalarray[] = $results_array["name"]; 

爲每個元素的關鍵將是連續的,0,1,2,3 ......等等等等。另一個不那麼優雅的解決方案,以獲得最後一個元素會...

echo $final_array[count($final_array) - 1]; 
0
echo implode($finalarray); 

或者用自定義加入「膠水」

echo implode(', ', $finalarray);