我有一個從我的數據庫查詢結果看起來像這樣,當轉儲和查詢正在做預期的,但我有一個小問題,獲取數組值。我正在使用PHP PDO來獲取結果。如何從多維數組中獲得值
$result = $_stmt->fetchAll();
$row = count($result);
print_r($result);
Array ([0] => Array ([SUM(od_price * od_qty)] => 69.85 [0] => 69.85)
[1] => Array ([SUM(od_price * od_qty)] => 13.97 [0] => 13.97)
) 69.8513.97
您可以看到結果包含一個數組和一個字符串值。我有一個選項來獲取數組或字符串值。但我寧願獲取數組值,因爲字符串值都是收集的。有人可以解釋我在做什麼在foreach循環中是錯誤的嗎?
if($row == 2)
{
foreach ($result as $k)
{
echo $price_1 = $k[0][0]; // expected 69.85
echo $price_2 = $k[0][1]; // expected 13.97
}
unset($k);
}
我需要得到預期的值,但我得到的是所有的字符串值都收集。
在回顧了下面的解決方案之後,我想到了這一點,這對我所想要的很有效。
$result = $_stmt->fetchAll();
$row = count($result);
$price = "";
if($row == 2)
{
foreach ($result as $k)
{
$price .= $k[0].',';
}
}
// remove the last comma
$price = substr($price, 0, -1);
list($totalPurchase, $shippingCost) = explode(",",$price);
$orderAmount = $totalPurchase + $shippingCost;
echo 'The amount is: '.$orderAmount;
但是,一切都很好,你只打印值,使他們出現。 –