数据库行上的PHP array_push不适用于所有这些行(使用WHILE循环)

Asa*_*saf -1 php mysql database arrays

我想在数组中为数据库中的每一行添加一个_ _.
在我的testTable中,我目前有2行,但在运行此代码时,只有一行被"推送"到数组中.

$result = mysql_query("SELECT * FROM testTable ORDER BY dateAdded DESC");
while($row = mysql_fetch_array($result)) {
    $Array = array();
    array_push($Array, array('id' => $row['id'], 'title' => $row['title'], 'desc' => $row['desc'],  'image' => $row['image'], 'dateAdded' => $row['dateAdded']);
}

print_r($Array);
Run Code Online (Sandbox Code Playgroud)

输出:

Array ( [0] => Array ( [id] => 2 [title] => test test test [desc] => text text text [image] => http://domain.com/sampleImg.png [dateAdded] => 2012-06-13 15:58:43 ) )    
Run Code Online (Sandbox Code Playgroud)

它起作用的时候我试图回复标题例如......像这样:

while($row = mysql_fetch_array($result)) {
    echo $row['title'];
}
Run Code Online (Sandbox Code Playgroud)

Joh*_*nde 5

$Array应该$productsArray而且应该在你的循环之外

$result = mysql_query("SELECT * FROM testTable ORDER BY dateAdded DESC");
$productsArray= array();
while($row = mysql_fetch_array($result)) {
    array_push($productsArray, array('id' => $row['id'], 'title' => $row['title'], 'desc' => $row['desc'],  'image' => $row['image'], 'dateAdded' => $row['dateAdded']);
}

print_r($productsArray);
Run Code Online (Sandbox Code Playgroud)