2015-01-30 2 views
0

2 개의 배열을 비교하려고합니다. 1은 input :: get에서 가져온 것이고 1은 쿼리 빌더에서 가져온 것입니다. 내가 무엇을 가지고 볼 수있는 모든 배열을 vardump하려고laravel 쿼리 작성기가 반환하지 않음

for ($k = 0; $k < $count; $k++) 
    { 
     $answer[] = Input::get('radio'.$k); 
     $answerid[] = Input::get('input'.$k); 

     $numberchoice[] = DB::table('numbers')->whereIn('questionid', array($answerid))->pluck('status'); 

     if ($answer == $numberchoice) 
     { 
      $result[] = "1"; 
     } 

     else 
     { 
      $result[] = "0"; 
     } 
    } 


    var_dump($answer); echo "<br>"; 
    var_dump($answerid); echo "<br>"; 
    var_dump($numberchoice); echo "<br>"; 

    $result = implode("%", $result); 
    var_dump($result); echo "<br>"; 

    die(); 

: 다음은 내 코드입니다. 나는 문제가 $ numberchoice에 있다고 생각한다. $ answer 및 $ answerid는 올바르게 반환되지만.

array(5) { [0]=> string(1) "1" [1]=> string(1) "1" [2]=> string(1) "1" [3]=> string(1) "0" [4]=> string(1) "1" } 
array(5) { [0]=> string(1) "3" [1]=> string(1) "6" [2]=> string(1) "8" [3]=> string(1) "1" [4]=> string(1) "2" } 
array(5) { [0]=> int(1) [1]=> NULL [2]=> NULL [3]=> NULL [4]=> NULL } 
string(9) "1%0%0%0%0" 

도와주세요. 감사.

답변

1

내가 볼 수 있듯이 $answerid은 이미 배열입니다. 그러나 ->whereIn('questionid', array($answerid))라고하면 기존 배열을 다른 배열로 래핑합니다. 정확한 whereIn 호출은 ->whereIn('questionid', $answerid)

입니다.
관련 문제