Codeigniter foreach很奇怪

时间:2013-02-03 02:23:23

标签: codeigniter

今天我发现我的更新功能突然在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造成的?

1 个答案:

答案 0 :(得分:0)

我认为问题是$ this-> db-> some_function返回值,停止执行第二个if语句,简单地说:第一个循环在每个$ this-> db->之后停止迭代,而第二个循环使用set方法。关于这个问题我的信息太少,试图进一步帮助你。更多细节请。