2017-12-12 10 views
1

私は値1,2の配列を持っています。例えば。Laravel:whereNotInが期待通りに動作しない

$arr = [] 

foreach($permission as $perm) 
{ 
    $arr[] = $perm->permission 
} 

dd(implode(',',$arr)); 
result shows 1,2 

しかし、私が質問で$ arrを使用すると、正しく動作しません。 私は次のクエリで

$response = implode(',',$arr); 
    $role = Role::whereNotIn('id',[$response])->get(); 
    //means select * from role where id notin (1,2); 

これを使用していますが、あなたたちはあなたが「1である文字列を渡している私は、この

答えて

1

を解決するために助けてくださいすることができ、それは

select * from role where id notin (1); 

以下のように動作します、2 "。 whereNotIn()メソッドに文字列ではない配列を渡す必要があります。

$role = Role::whereNotIn('id', $arr)->get(); 
+1

ありがとうございます。 –

関連する問題