sql >> データベース >  >> RDS >> Mysql

CodeIgniter多次元配列をmysqlデータベースの単一列に格納

    メッセージにあるように、キー$data['view_count']がありません しかし、あなたは$data[2017][6][10]['count']を持っています 価値。これらの日付は動的に変更されるため、キーcountで内部配列の値を取得する必要があると思います。 。配列に常に同様のキーがある場合、つまり$data[year][month][day][count]からのコード(ビット変更)を使用できます答え そのキー値を取得します。モデルを入れる

    private function getCount($arr, $search)
    {
        $iterator = new RecursiveIteratorIterator(new RecursiveArrayIterator($arr)); 
        foreach($iterator as $key => $value) {
            if($search == $key && $value !== '') {
                return $value;
            }
        }
        return false;
    }
    

    次に、最初のメソッドで、この関数でフィルタリングされた値を使用します:

    public function setView($data)
    {
        $count = $this->getCount($data, 'count');
    
        if ($count !== false) {
            $setData = $this->db->where('short', 'honwl')->update('ci_links', $count);
            return $setData;
        }
        return false;
    }
    


    1. カウント最大回数レコードがデータベーステーブルに表示されます

    2. Mysql-タイムスタンプしかない場合、年ごとに行を選択するにはどうすればよいですか?

    3. 特定の場所にデータベースを備えたAndroidSQLiteデータベースは可能ですか?

    4. JDBCを介してINSERTIGNOREを実行するときに重複カウントを取得する