今天我发现我的更新功能突然在codeigniter不工作probaly。我通过调用foreach循环两次解决了这个问题,这是我的代码:
function _update($options = array(),$set = array()) {
......
foreach ($this->db->field_data($options['table']) as $field) {
//never get inside this foreach loop, but if I removed this foreach loop it will not get inside the next foreach loop.
}
foreach ($this->db->field_data($options['table']) as $field) {
if(isset($options[$field->name])) $this->db->where($field->name, $options[$field->name]);
if(isset($set[$field->name])) $this->db->set($field->name, $set[$field->name]);
}
......
}
这个问题是由codeigniter还是PHP造成的?
答案 0 :(得分:0)
我认为问题是$ this-> db-> some_function返回值,停止执行第二个if语句,简单地说:第一个循环在每个$ this-> db->之后停止迭代,而第二个循环使用set方法。关于这个问题我的信息太少,试图进一步帮助你。更多细节请。