【问题标题】:codeigniter dynamic number of fields insertingcodeigniter 动态插入的字段数
【发布时间】:2011-09-23 01:24:31
【问题描述】:

我正在使用 codeigniter 并从关联数组(来自外部网站)对我的表执行一些插入和更新操作,其中字段数并不总是相同。

这是我的代码。

 $url ="http://api.peerindex.net/1/profile/show.json?id=$twittername&api_key=xxxxxx";

            $ch = curl_init();  
            $timeout = 5;  
            curl_setopt($ch,CURLOPT_URL,$url);  
            curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);  
            curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);  
            $peerdata = curl_exec($ch);
            curl_close($ch);
            if (strlen($peerdata)>10)
            {
                $peerdata = json_decode($peerdata);
                $this->db->where ("userid", $this->userinfo->userid);
                $this->db->update('userpeerdata', $peerdata);
               }

我的表 userpeerdata 包含大约 6 列,但有些列不存在。我想要的是它应该只采用数据库中存在的那些列,其他应该忽略。我怎样才能简单地做到这一点。

【问题讨论】:

    标签: php codeigniter


    【解决方案1】:

    您应该使用Codeigniter's array helper。他们有一个不错的小函数elements(),它只会提取你想要的元素:

    $this->load->helper('array');
    $peerdata = json_decode($peerdata);
    // Include a list of all your columns in the table...
    $peerdata = elements(array('name', 'twitter', 'known', 'authority'), $peerdata);
    
    $this->db->where ("userid", $this->userinfo->userid);
    $this->db->update('userpeerdata', $peerdata);
    

    【讨论】:

      猜你喜欢
      • 2021-01-23
      • 1970-01-01
      • 2014-12-13
      • 2016-09-29
      • 2020-07-23
      • 1970-01-01
      • 2015-06-21
      • 2018-05-05
      • 2018-12-21
      相关资源
      最近更新 更多