2014-05-19 4 views
2

멍청한 질문에 대해 유감스럽게 생각하지만 PHP에 정말 익숙합니다. 그래서 나는이 foreach 성명을 가지고있다 :합계를 얻기 위해 함께 값을 더하기

foreach ($contents as &$item) { 
    $item->sku = $item->sku; 
    $item->slug  = $item->slug; 
    $item->price = $item->price_per; 
    $item->subtotal = $item->qty * $item->price_per; 
} 

그것은 각 항목에 대한 세부 사항을 표시하는 데 완벽하게 작동하지만 어떻게 총 가격을 얻는가?

$total = 0; 
foreach ($contents as &$item) { 
    $item->sku = $item->sku; 
    $item->slug  = $item->slug; 
    $item->price = $item->price_per; 
    $item->subtotal = $item->qty * $item->price_per; 
    $total += $item->subtotal; 
} 

이 모든 초기치를 0으로 추적 변수를 초기화입니다 않습니다 : 각 항목에 대한 $ 항목 -> 소계는

+0

$grandTotal = 0; foreach ($contents as &$item) { $item->sku = $item->sku; $item->slug = $item->slug; $item->price = $item->price_per; $item->subtotal = $item->qty * $item->price_per; $grandTotal += $item->subtotal; } print($grandTotal); // Hopefully a positive monetary value :) 
당신이 선택할 수있는 3 거의 동일 (정정) 답이있다! – Crackertastic

+0

그리고 그들은 많이 다릅니다 – ciuak

답변

1

그냥 총의를 추적하는 전용 변수가 함께했다. 그런 다음 각 반복에서 새로운 계산 된 부분합을 추가합니다. 결국에는 총액이 있습니다.

+0

음, 눈치 채지 못했지만 처음에 광산을 게시했습니다 –

+0

아니요, 내 것이 분이었습니다 – ciuak

+0

에 따라 아니요 –

0

루프 외부의 변수를 최신 부분합으로 업데이트 해 보았습니까?

+0

우리의 답변은 동일합니다! – ciuak

+0

@ciuak 예, 여러 초 단위로 답변을 입력하는 경우의 부작용입니다. – Crackertastic

0
$total = 0; 
foreach ($contents as &$item) { 
    $item->sku = $item->sku; 
    $item->slug  = $item->slug; 
    $item->price = $item->price_per; 
    $item->subtotal = $item->qty * $item->price_per; 
    $total += $item->subtotal; 
} 
+0

모든 대답과 내가 선택한 것과 똑같은 대답이 먼저 나왔습니다. – awsm

+0

나는 마지막 이었지만, 고마워! – ciuak

+0

@awsm 사실 John Conde는 타임 스탬프에 따라 먼저 대답했습니다. – Crackertastic

관련 문제