2012-06-01 17 views
5

में MongoDB के साथ Interfacing इस $this->db->query($query) जैसी क्वेरी MongoDB फेंकने के लिए कार्य करते हैं क्योंकि मैं CodeIgniter में MongoDB निष्पादक बनाने के लिए तो अगर मैं इस तरह इस क्वेरी लिखें चाहते है सीधे mongodb सर्वर के लिए या कोई और तरीका है?CodeIgniter

उत्तर

3

आपको MongoDB PHP Driver के MongoDB::command() का उपयोग ऐसे डेटाबेस आदेशों को mongodb सर्वर पर पास करने के लिए करना चाहिए।

कोडइग्निटर में कुछ समुदाय निर्मित मोंगोडीबी पुस्तकालय हैं जिनका आप उपयोग कर सकते हैं। चूंकि मैंने उनमें से लगभग सभी की जांच की है, मेरी सलाह लें और CodeIgniter MongoDB Active Record का उपयोग करें।

<?php 
// Somewhere in your model, controller, etc. 

// Load MongoDB library 
$this->load->library('mongo_db'); 

// Query MongoDB: Active document library usage example 
$docs = $this->mongo_db->where('age', '33')->get('collection_name_here'); 

// Query MongoDB: Command usage example 
$docs = $this->mongo_db->command(array(
    'geoNear' => 'buildings', 
    'near'  => array(53.228482, -0.547847), 
    'num'  => 10, 
    'nearSphere' => TRUE, 
)); 

// Theme results, pass to the view, etc. 

यहाँ कि चारों ओर कुछ अन्य पुस्तकालय हैं आप सक्रिय रिकॉर्ड एक साथ उपयोग कर सकते हैं:

+0

आपके उत्तर के लिए धन्यवाद मैं कोशिश करूंगा। मैं इस तरह के mongoDB निष्पादक बनाना चाहता हूं [https://github.com/zacksyah/sql_executor ](https://github.com/zacksyah/sql_executor) मैंने पहले से ही SQL निष्पादक बनाया है और मैं भी उस ऐप को mongoDB के साथ बनाना चाहता हूं ताकि अगर हम 'db.user.find ({age: 33}) जैसे क्वेरी इनपुट करते हैं, या हम इस तरह की इनपुट क्वेरी' {आयु: 33} 'php सीधे उस क्वेरी को सर्वर पर फेंक देते हैं और परिणाम लौटाते हैं। ऐप एसक्यूएल के लिए phpmyadmin और mongoDB के लिए rockmongo की तरह होगा, लेकिन मेरा ऐप अभी भी बहुत आसान बना देगा – user1052073

+0

उपयोगकर्ता इनपुट से क्वेरी प्राप्त करें, इसे MongoDB :: कमांड() पर पास करें, और थीमाधारित परिणाम आउटपुट करें। – sepehr