2011-11-09 16 views
6

रिटर्न मैं 'कोई डेटा नहीं मिला' अगर मेरी क्वेरी कोई परिणाम का मान कैसे लौट सकते हैं क्रिया ???Codeigniter - अगर डेटाबेस क्वेरी कोई परिणाम नहीं

function getTerms($letter) { 


    $this->db->select('term, definition'); 
    $this->db->from('glossary'); 
    $this->db->where(array('letter' => $letter)); 

    $query = $this->db->get(); 

    foreach ($query->result() as $row) { 
     $data[] = array(
      'term' => $row->term, 
      'definition' => $row->definition 
     ); 
    } 

    return $data; 
} 

यह वर्तमान में $ डेटा चर भले ही क्वेरी कोई परिणाम नहीं जो मुझे php त्रुटियों दे रहा है रिटर्न देता है:

यह मेरा कोड है। मैं कैसे जांच सकता हूं कि $ डेटा सरणी लौटने से पहले परिणाम हैं।

उत्तर

3

यह वर्तमान में $ डेटा चर भले ही क्वेरी कोई परिणाम नहीं जो मुझे php दे रहा है रिटर्न देता है त्रुटियों।

$data = array(); 
// Loop through possible results, adding to $data 

कोई परिणाम हैं, तो आप एक खाली सरणी वापस लौटे, तो जाँच करें कि आपके नियंत्रक में मिल जाएगा:

यह सरणी है कि आप बनाने का इरादा प्रारंभ करने में एक अच्छी आदत है।

इस तरह, कम से कम चर परिभाषित किया गया है और आप नोटिस नहीं मिलेगा।

13

सीधे शब्दों में जाँच करें कि क्वेरी देता है कम से कम एक पंक्ति:

if ($query->num_rows() > 0) { 
    // query returned results 
} else { 
    // query returned no results 
} 

और पढ़ें in the docs

2

के बारे में क्या $data के लिए प्रारंभिक खाली सरणी मूल्य देने के लिए बस foreach

1
<?php 

    return is_array($data) ? $data : array(); 
} 
से पहले

$data = array(); 

डाल

संबंधित मुद्दे