2016-09-27 5 views
-1

그래서 내 문제는 그것이 두 번 반복하고 내가 원하는 원하는 출력이 아닙니다. 그래서 시작하려면 3까지 각 값을 1로 3 확인란을 데이터베이스에 보내고 있습니다 '@ | @'기호로 나눈 값입니다. 3 개 체크 박스에 대한 $ rs_array 콘텐츠 [ '패키지']의Foreach 반복 루프 두 번

예 다운 여기

[email protected]|@[email protected]|@3 

고른 그것의 foreach 루프

if(strpos($rs_array['package'], '@|@') == true){ 
$array = explode('@|@', $rs_array['package']); 
foreach ($array as $myArray) { 
    if ($myArray==1) { 
     $myArray = "Starter"; 
    } 
    elseif ($myArray==2) { 
     $myArray = "Developing"; 
    } 
    elseif ($myArray==3){ 
     $myArray = "Matured"; 
    } 
    $my_Array[] = $myArray; 
} 
//unset($my_Array); 
$my_Arrays = implode(',', $my_Array); 
} 
else{ 

    $my_Arrays = $rs_array['package']; 
    if($my_Arrays==1){ 
    $my_Arrays = "Starter"; 
    } 
    elseif ($my_Arrays==2) { 
     $my_Arrays = "Developing"; 
    } 
    elseif ($my_Arrays==3) { 
     $my_Arrays = "Matured"; 
    } 
    else{ 
     $my_Arrays = ""; 
    } 
} 
echo $my_Arrays; 

되며 여기까지 에코의 출력 인 내가 그 중 세 개를 골라 낼 때

Starter,Developing,Matured,Starter,Developing,Starter,Developing,Matured 

그리고 두 개를 골라야한다.

Starter,Developing,Matured,Starter,Developing 

이 난 such.Much 도움이

을 감사로 표시하는 이유 ------ 그래서 여전히 해결 또는 알 수없는 마음을 여전히 foreach는 필드에 신인입니다 -problem -----

이제는 $ rs_array [패키지]의 한 행만 있으면 제대로 작동하지만 문제가 두 개 이상있는 경우 문제가 발생합니다. 그것은 단지 두 번째에까지 추가 등등 ... 하고 해당 행의 각 당신은 단지 직접 배열에 그들을 밀어 수

+0

'$ rs_array [ 'package']'의 내용을 공유 할 수 있습니까? –

+0

예를 들어 공유'$ rs_array [ 'package'] = 1 @ | @ 2 @ @ @ 3'. 코드가 완벽하게 작동합니다. 질문에 빠뜨리지 않았는지 확인할 수 있습니까? –

+0

나는 당신의 소스 코드를 시뮬레이트하고 잘 동작한다. 문제는 데이터를 추출한 방식에 있습니다. 내 관찰에서, 당신은 이것을 두 번 부르고 있습니다. –

답변

-2

다르다는 것을 식별 그래서 나는 방법이 필요합니다 :

if(strpos($rs_array['package'], '@|@') == true){ 
    $array = explode('@|@', $rs_array['package']); 
     foreach ($array as $myArray) { 
      if ($myArray==1) { 
       $my_Array[] = "Starter"; 
      } elseif ($myArray==2) { 
       $my_Array[] = "Developing"; 
      } elseif ($myArray==3){ 
       $my_Array[] = "Matured"; 
      }  
     } 
     //unset($my_Array); 
     $my_Arrays = implode(',', $my_Array); 
} 
echo $my_Arrays; 

희망이 있습니다.

+0

이것은 질문에 대답하지 않습니다, OP는 왜 자신의 루프에 문제가 있는지 묻고 있습니다. – Samundra

+0

답변 주셔서 감사합니다.하지만 작동하지 않습니다. –