2012-03-02 4 views
0
내가 힘든 시간을 다음과 같은 배열을 통해 반복하는 데 문제

통해 반복은 -다중 배열

array("newProduct"=>array('rmsId' => '123456789','departmentName' => 'Britax','categoryName' => 'Car Seat','productName' => 'Test Product For Britax Car Seat','productPrice' => 33.99,'productQty' => 10), 
     "newProduct"=>array('rmsId' => '987654321','departmentName' => 'Stokke','categoryName' => 'Highchairs','productName' => 'Test Product For Stokke Highchair','productPrice' => 83.99,'productQty' => 20), 
     "newProduct"=>array('rmsId' => '13579','departmentName' => 'Maclaren','categoryName' => 'Buggy','productName' => 'Test Product For Maclaren Buggy','productPrice' => 183.99,'productQty' => 5) 
       ); 

사람이 달성에 바른 길에 저를 설정할 수 있습니까? 내 목표는 MySQL의 DB로

감사

각을 추가하는 것입니다

답변

3

당신의 배열이 잘못되었습니다 키는 한 번만 존재할 수 있습니다. 아마도 숫자 인덱스를 작성한 다음 foreach()을 사용하여 반복하십시오.

1

먼저 각 배열 키에 고유 한 식별자를 지정해야합니다. 그런 다음 루프를 돌릴 수 있습니다.

$items = array(
       "product1"=>array('rmsId' => '123456789','departmentName' => 'Britax','categoryName' => 'Car Seat','productName' => 'Test Product For Britax Car Seat','productPrice' => 33.99,'productQty' => 10), 
       "product2"=>array('rmsId' => '987654321','departmentName' => 'Stokke','categoryName' => 'Highchairs','productName' => 'Test Product For Stokke Highchair','productPrice' => 83.99,'productQty' => 20), 
       "product3"=>array('rmsId' => '13579','departmentName' => 'Maclaren','categoryName' => 'Buggy','productName' => 'Test Product For Maclaren Buggy','productPrice' => 183.99,'productQty' => 5) 
       ); 

foreach($items as $product) { 
    echo $product['rmsId']; 
    echo $product['departmentName']; 
    // ... and so on 
} 
1

이 하나를 밖으로 시도 : -

<?php 
$var = array("0"=>array('rmsId' => '123456789','departmentName' => 'Britax','categoryName' => 'Car Seat','productName' => 'Test Product For Britax Car Seat','productPrice' => 33.99,'productQty' => 10), 
     "1"=>array('rmsId' => '987654321','departmentName' => 'Stokke','categoryName' => 'Highchairs','productName' => 'Test Product For Stokke Highchair','productPrice' => 83.99,'productQty' => 20), 
     "2"=>array('rmsId' => '13579','departmentName' => 'Maclaren','categoryName' => 'Buggy','productName' => 'Test Product For Maclaren Buggy','productPrice' => 183.99,'productQty' => 5) 
       ); 
      foreach ($var as $key=>$val) { 
      $id = $val['rmsId']; 
      $dname = $val['departmentName']; 
      $cname = $val['categoryName']; 
      $pname = $val['productName']; 
      $price = $val['productPrice']; 
      $qnt = $val['productQty']; 
     $query = mysql_query("INSERT INTO TABLENAME (rmsId,departmentName,categoryName,productName,productPrice,productQty) VALUE(".$id.",".$dname.",".$cname.",".$pname.",".$price.",".$qnt.")"); 
      } 
?> 
1
$array = array(array('rmsId' => '123456789','departmentName' => 'Britax','categoryName' => 'Car Seat','productName' => 'Test Product For Britax Car Seat','productPrice' => 33.99,'productQty' => 10), 
     array('rmsId' => '987654321','departmentName' => 'Stokke','categoryName' => 'Highchairs','productName' => 'Test Product For Stokke Highchair','productPrice' => 83.99,'productQty' => 20), 
     array('rmsId' => '13579','departmentName' => 'Maclaren','categoryName' => 'Buggy','productName' => 'Test Product For Maclaren Buggy','productPrice' => 183.99,'productQty' => 5) 
       ); 


foreach($array as $value){ 
    $query = "insert into (columnname,columnname) values (".$value['rmsId'].",'".$value['departmentName']."')"; 
    //fire query 

} 

이 배열 형식을 가정 을 그림과 같이 배열 stucture이 아니라 적절한 표시 시도되지