基本上我試圖建立一個對象,重複查詢中的值到鍵中。對象和PHP
$obj = new stdClass();
$obj->Product = (object) array("Name" => "", "Month"=> "", "Price" =>"");
$obj->Totals = 0.00;
$r=$shop->get_all_products(0);
while(mysql_num_rows($r) && $row=mysql_fetch_array($r))
{
for ($i=$startMonth; $i<=$endMonth; $i++)
{
$thisDate=date("F", mktime(0, 0, 0, $i, 10));
$r1=$reports->get_sales_by_month($i,$row['product_id']);
while(mysql_num_rows($r1) && $row1=mysql_fetch_array($r1))
{
$totSales=$totSales + $row1['total_price'];
$obj->Product->Name=$row['product_name'];
$obj->Product->Month=$thisDate;
$obj->Product->Price=$row1['total_price'];
$obj->Totals=$totSales;
}
}
}
當我做var_dump($obj)
時,我只得到查詢中的最後一條記錄。我想讓對象包含所有記錄。
你過寫作'$ obj'的價值觀每次循環運行時 - 您都需要使用不同的名稱('Name1'等),或者在while循環中移動對象實例化代碼,並以這種方式生成一個對象數組。 – andrewsi
也使用'mysql_ *'函數集已過時 - 您應該查看使用'mysqli'或'pdo'對象。 – StampyCode
[**請不要在新代碼**中使用'mysql_ *'函數](http://bit.ly/phpmsql)。他們不再被維護[並被正式棄用](https://wiki.php.net/rfc/mysql_deprecation)。看到[**紅框**](http://j.mp/Te9zIL)?學習[*準備的語句*](http://j.mp/T9hLWi),並使用[PDO](http://php.net/pdo)或[MySQLi](http://php.net/ mysqli) - [這篇文章](http://j.mp/QEx8IB)將幫助你決定哪個。如果你選擇PDO,[這裏是一個很好的教程](http://www.brightmeup.info/article.php?a_id=2)。 –