2017-06-21 8 views
0

get_whereクエリでresult_array()を実行していますが、 'added_by'の列は{'id': '(id)'}のjson形式です}Get_WhereのJSONフィールドとの一致

どのように現在のユーザーIDと一致するようにget_whereクエリを実行できますか?

これまでのところ、

$this->db 
    ->order_by('till', 'desc') 
    ->get_where('coupon', 
      [ 
       'added_by' => json_encode(array('id'=> $this->session->user_id)), 
       'status' => 'ok' 
      ] 
    ) 
    ->result_array() 

答えて

0

json_encodeは、{"id": $id}を返します。あなたは{"id": "$id"}でOKであれば、あなたは単なる文字列に強制強制する必要があります。

json_encode(array('id'=> $this->session->user_id . '')) 

あなたが{'id': '$id'}が必要な場合は、文字列手動で置き換えを行う必要があります。

str_replace('"', '\'', json_encode(array('id'=> $this->session->user_id . '')) 
+0

デシベルであればこれだけ作品の{「型」:と「ID」}すべてのシングル「...私はそれが{ 『タイプ』のように二重引用符で作業する必要があります: 『ID』 – Gilbert

+0

@Gilbert二重にする必要がある場合は、最初の例を使用してください:-) – cwallenpoole

関連する問題