2013-08-22 3 views
0

'POST 양식'에서 반환 값 배열을 반복하여 그 값을 데이터베이스에 저장하려고합니다.array_key_exists 함수로 foreach를 사용하는 방법

내가 가지고있는 문제는 그 값들을 돌아 다니는 가장 좋은 방법을 결정하는 것입니다. array_key_exists()를 사용해 보았습니다. 이 함수는 If 절에서만 작동합니다. 내가 ZendFrameWork 1.

하고 있어요

내가 아래에있는 내 코드를 동봉하고 도움과 조언 정말 감사하겠습니다.

foreach(array_key_exists('id', $ReturnedPostvalues)) 

    $product = EP3D::getSource('EP3D/Products')->retrieve($productId); 
    { 
     $product->quantity = $ReturnedPostvalues['quantity']; 
     $product->price = $ReturnedPostvalues['price']; 
     $product->rrp = $ReturnedPostvalues['rrp']; 

     $product->save(); 
    } 
    } 

var_dumped 어레이 I 값은 기본적으로이 배열에 입력 데이터베이스에 데이터 주위에 루프를 필요

array(6) { 
    ["quantity"]=> 
    string(3) "222" 
    ["price"]=> 
    string(3) "220" 
    ["rrp"]=> 
    string(2) "22" 
    ["sampleId"]=> 
    string(5) "42960" 
    ["id"]=> 
    string(1) "5" 
    ["delete"]=> 
    string(1) "0" 
    } 
    [6]=> 
    array(7) { 
    ["quantity"]=> 
    string(4) "7777" 
    ["price"]=> 
    string(4) "2022" 
    ["rrp"]=> 
    string(2) "22" 
    ["sampleId"]=> 
    string(5) "42960" 
    ["id"]=> 
    string(1) "6" 
    ["delete"]=> 
    string(1) "0" 
    } 

포스트로부터 반환.

foreach($ReturnedPostvalues as $value) { 
    if (array_key_exists('id', $value)) { 
     $product = EP3D::getSource('EP3D/Products')->retrieve($value['id']); 
     $product->quantity = $value['quantity']; 
     $product->price = $value['price']; 
     $product->rrp = $value['rrp']; 

     $product->save(); 
    } 
} 

당신은 다차원 배열의 이해를 새로 고쳐야 :

+1

나는 무엇을 하려는지 알 수 없습니다. 'foreach'의 문법은'foreach ($ array as $ element)'입니다. 'array_key_exists'는 배열이 아닌 true 또는 false를 반환합니다. 그리고 당신은'$ element' 반복 변수를 가지고 있지 않습니다. – Barmar

+0

나는 반환 값 배열을 가지고있다; 각각에는 ID가 있어야합니다. 내가 얼마나 많은 배열을 계산할 수 있고 배열 주위를 돌아 다니며 그 ID의 각 인스턴스에 대한 정보를 추출 할 수 있기를 바란다. – andreea115

답변

1

은 어쩌면 이것은 당신이 원하는 것입니다. 문제는 최상위 배열에 액세스하고 하위 배열에 액세스하는 것을 혼란스럽게 보였다는 것입니다.

+1

Barmar에게 친절한 조언을 해주셔서 감사합니다. 그러나 다음 번에 내려 놓을 사람은 적습니다. 우리는 모두 학습 과정에 있습니다. 누구도 전문가 프로그래머로 태어났습니다. 우리 모두는 어딘가에서 시작해야만했습니다 – andreea115

+0

무료 지원을 원할 때가 있습니다. 때로는 함께 편집 할 필요가 있습니다. 이것은 전문가 만이 알 수있는 고급 기술이 아니라 기본 능력입니다. 나는 수수께끼 같은 프로그래밍 문제에 도움을주고 받기 위해 SO에 가입했지만, 대부분 초보자에게 기본적인 프로그래밍 기술을 가르치는 것처럼 보입니다. 그 학교는 무엇을위한 것이 아닌가? – Barmar

+0

나는 당신의 요점을 생각해냅니다. 그러나이 포룸은 모든 레벨의 프로그래머를위한 것입니다. 사람들을 실망시키는 문제는 다른 사람들이 질문을 두려워하게 만드는 것입니다. 그런 다음 프로그래머가 아이디어와 지식을 교환 할 수있는 곳과는 반대로 괴롭히는 곳이됩니다. 아무도 다른 사람들을 괴롭히는 일이 없어야합니다. – andreea115

관련 문제