我想从db获取一行,从行中删除一个元素并将该行更新回db。
我写了这段代码
$query = $this->db->get_where(TABLENAME, array('pin_code' => $pincode), 1);
$result = $query->result_array();
$array = $result[0];
if (($key = array_search($ccode, $array)) !== false) {
unset($array[$key]);
} //$code is the value which i want to remove
$this->db->where('pin_code', $pincode);
$this->db->update(TABLENAME, $array);
这是行
Array ( [pin_code] => 854101 [ccode_1] => 5806 [ccode_2] => [ccode_3] => [ccode_4] => [ccode_5] => [ccode_6] => [ccode_7] => [ccode_8] => [ccode_9] => [ccode_10] => [ccode_11] => [ccode_12] => [ccode_13] => [ccode_14] => [ccode_15] => [ccode_16] => [ccode_17] => [ccode_18] => [ccode_19] => [ccode_20] => [ccode_21] => [ccode_22] => [ccode_23] => [ccode_24] => [ccode_25] => [ccode_26] => [ccode_27] => [ccode_28] => [ccode_29] => [ccode_30] => )
我只想删除ccode_1(这不是固定取决于$ ccode值)值并将其更新回db。
但它没有显示出如上所述的预期结果。
答案 0 :(得分:0)
您无需取消设置所需的索引即可获取该索引并应用更新
if (($key = array_search($ccode, $array)) !== false) {
$this->db->where('pin_code', $pincode);
$this->db->update(TABLENAME, array($key => ''));
}