2010-07-22 6 views
5

में क्वेरी स्ट्रिंग से मूल्य प्राप्त करने का सही तरीका क्या है क्वेरी स्ट्रिंग से चर प्राप्त करने के 'कोहाना' तरीके के बारे में सिर्फ उत्सुक है?कोहाना 3

सबसे अच्छा है कि मैं के साथ आगमन वर्ग के साथ $ _GET वर को पार्स है ऊपर आ सकता है

। किसी के पास ऐसा करने का बेहतर तरीका है?

// foo?a=1&b=2 
function action_welcome() 
{ 
    echo('a = '.Arr::get($_GET, 'a', '0')); 
    echo('b = '.Arr::get($_GET, 'b', '0')); 
} 

उत्तर

6

यह बहुत सही तरीका है, मैं केवल आपको सलाह देता हूं कि आप स्ट्रिंग '0' के बजाय डिफ़ॉल्ट रूप से न्यूल का उपयोग करें, जहां आप कर सकते हैं।

तुम भी सरणी के किसी भी प्रकार, न केवल वैश्विक वार्स के लिए इस सुविधा का उपयोग कर सकते हैं, तो

$var = isset($arr['key']) ? $array['key'] : NULL 

तुम सिर्फ कर के बजाय (Kohana 3,0)

$var = Arr::get($arr, 'key', NULL); 

या (Kohana 3.1+)

$var = $request->query('key'); 
+0

के लिए पारित शून्य पासिंग के रूप में 3 तर्क ज़रूरत से ज़्यादा है किसी भी चर हो सकता है आंतरिक है। –

+0

@ द पिक्सेल डेवलपर बिल्कुल, क्योंकि यह वैसे भी डिफ़ॉल्ट मान है; मैं केवल '0' पास करने से बेहतर अभ्यास के रूप में इसका जिक्र कर रहा था :) – Kemo

7

मुझे लगता है कि Arr :: get का उपयोग करना बहुत सामान्य है, यह विशिष्ट कोहना विधि का उपयोग करने के लिए अधिक व्यावहारिक है वास्तव में इस

Request::current->query('variable') 

या

$this->request->query('variable') 

भी अनुरोध के लिए यह

+0

मैं अपना उत्तर अपडेट करूंगा, यह सवाल 3.1 से पहले पूछा गया था – Kemo

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