モデルに配列を取得しています。配列に値 1 と 2 があるとします。
これを単一の列 1,2 に更新して、列が次のようになるようにする必要があります。
桁
1,2
foreach($x as $y){
$this->db->where('column',4);
$this->db->set('id',$data);
$this->db->update('table');
}
しかし、これは更新 2 のみであり、1 を省略しています。どこが間違っているのでしょうか?
モデルに配列を取得しています。配列に値 1 と 2 があるとします。
これを単一の列 1,2 に更新して、列が次のようになるようにする必要があります。
桁
1,2
foreach($x as $y){
$this->db->where('column',4);
$this->db->set('id',$data);
$this->db->update('table');
}
しかし、これは更新 2 のみであり、1 を省略しています。どこが間違っているのでしょうか?
使用するimplode
例えば:
$data = [1,2]
$comma_data = implode(",", $data)
次に、列を更新します$comma_data
列に複数の値を保存する場合は、それらを配列に入れてシリアル化します。列に保存するより。列タイプをテキストにします。
$array['name'] = 'test';
$array['otherinfo'] = 'otherinfo';
$data = serialize($array);
foreach($x as $y)
{
$this->db->where('column',4);
$this->db->set('id',$data);
$this->db->update('table');
}
選択すると、unserialize(); を使用して配列のシリアル化を解除できます。
私は間違ったデータ型を持っていました、私はそれを理解しました。