덤프와 쿼리가 예상 한대로 수행하는 db 쿼리의 결과가 있지만 배열 값을 가져 오는 데 약간의 문제가 있습니다. 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
결과에 배열과 문자열 값이 모두 포함되어 있습니다. 배열 또는 문자열 값을 가져올 수있는 옵션이 있습니다. 하지만 문자열 값이 모두 togather 있기 때문에 나는 오히려 배열 값을 얻을 것입니다. 어떤 사람은 내가하고있는 일을 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;
그러나 모든 것이 좋지만 값만 인쇄하면 나타납니다. –