2014-11-12 3 views
0

아래쪽에 두 개의 배열이 있는데 숫자 인덱스로 값을 출력하려고합니다. 너무 단순하지만 아직 내 삶을 살아갈 수는 없습니다. 이것들을 다른 foreach 루프에 중첩시킵니다.숫자 인덱스로 액세스하는 PHP 배열 루프

$x = $ppro_model->orderedByDate($val->ProdCode); 
          $xx = $ppro_model->receivedByDate($val->ProdCode); 
          $ordQty = arrayDateBuilder($x, 'ordQUANTITY', $daterange); 
          $recQty = arrayDateBuilder($xx, 'recQUANTITY', $daterange); 

$ ordQty 및 $ recQty는 항상 같은 양의 요소를 갖습니다. 그래서 이상적으로 나는 다음을 수행 할 수 있도록하고 싶습니다 :

for($i = 0; $i <= count($ordQty); $i++){ 
         echo "<td>"; 
         echo $ordQty['recQUANTITY'][$i]; 
         echo $recQty['ordQUANTITY'][$i]; 
         echo "<td>"; 
        } 

하지만 난 분명히 뭔가를 잘못하고 있어요. 어떤 조언을 주시면 감사하겠습니다.

는 또한 시도 :

echo $ordQty[$i]; 

은 소용이 없다 할 수 있습니다.

array (size=7) 
    0 => 
    array (size=2) 
     'DATE' => string '20141110' (length=8) 
     'ordQUANTITY' => string '55.00' (length=5) 
    1 => 
    array (size=2) 
     'DATE' => string '20141111' (length=8) 
     'ordQUANTITY' => string '80.00' (length=5) 
    2 => 
    array (size=2) 
     'DATE' => string '20141112' (length=8) 
     'ordQUANTITY' => string '70.00' (length=5) 
    3 => 
    array (size=2) 
     'DATE' => string '20141113' (length=8) 
     'ordQUANTITY' => string '135.00' (length=6) 
    4 => 
    array (size=2) 
     'DATE' => string '20141114' (length=8) 
     'ordQUANTITY' => string '70.00' (length=5) 
    5 => 
    array (size=2) 
     'DATE' => string '20141115' (length=8) 
     'ordQUANTITY' => string '120.00' (length=6) 
    6 => 
    array (size=2) 
     'DATE' => string '20141116' (length=8) 
     'ordQUANTITY' => string '0' (length=1) 

은 하나 같이 : 당신은 뒤로 배열 식을했다

array (size=7) 
    0 => 
    array (size=2) 
     'DATE' => string '20141110' (length=8) 
     'recQUANTITY' => string '0' (length=1) 
    1 => 
    array (size=2) 
     'DATE' => string '20141111' (length=8) 
     'recQUANTITY' => string '0' (length=1) 
    2 => 
    array (size=2) 
     'DATE' => string '20141112' (length=8) 
     'recQUANTITY' => string '0' (length=1) 
    3 => 
    array (size=2) 
     'DATE' => string '20141113' (length=8) 
     'recQUANTITY' => string '0' (length=1) 
    4 => 
    array (size=2) 
     'DATE' => string '20141114' (length=8) 
     'recQUANTITY' => string '0' (length=1) 
    5 => 
    array (size=2) 
     'DATE' => string '20141115' (length=8) 
     'recQUANTITY' => string '0' (length=1) 
    6 => 
    array (size=2) 
     'DATE' => string '20141116' (length=8) 
     'recQUANTITY' => string '0' (length=1) 
+2

echo $ ordQty [$ i] [ 'recQUANTITY']; ? – Hobbes

+0

@Hobbes : 답변으로 게시하십시오. Barmar의 대답에 따라 – AbraCadaver

+1

을 사용하고,'foreach'를 사용하여 삶을 편하게하십시오. –

답변

2

, 그것은 $ordQty[$i]['ordQUANTITY']을해야합니다. 또한 배열 상태가 0에서 count-1으로 변경 되었기 때문에 루프 상태가 잘못되었습니다. $i < count($ordQty)이 아니라 <=이되어야합니다.

foreach을 사용하여 약간 단순화 할 수 있습니다.

foreach ($ordQty as $i => $ordElt) { 
    echo "<td>"; 
    echo $ordElt['ordQUANTITY']; 
    echo $recQty[$i]['recQUANTITY']; 
    echo "<td>"; 
} 
+0

대단히 고마워요, 때로는 단순한 어리석은 일이 생겨납니다. – Waragi