Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Django से MySQL में DATE_FORMAT () को कॉल करना विफल रहता है

  2. mysql कॉलम में किसी शब्द को कैसे खोजें और बदलें?

  3. Ubuntu 14.04 पर innodb memcached प्लगइन MySQL5.6.17 स्थापित करने का प्रयास कर रहा है

  4. राज्य के एकाधिक चयन सूची बॉक्स सभी शहरों को किसी अन्य सूची बॉक्स में प्रदर्शित नहीं कर रहा है (पीएचपी, माइस्क्ल, AJAX)

  5. पर्ल डीबीआई mysql देशी एकाधिक डालने की क्षमता का उपयोग करके एकाधिक पंक्तियां डालें