2012-04-05 12 views
25

में यूआरएल पैरामीटर प्राप्त करें मैंने ज़ेंड फ्रेमवर्क 1 का अनुभव किया है और मैंने उस ढांचे के साथ कुछ ऐप्स बनाए हैं।जेडएफ 2: नियंत्रक

अब, मैं ज़ेंड फ्रेमवर्क 2 का प्रयोग कर रहा हूं, लेकिन मैं यूआरएल पैरामीटर पर फंस गया हूं। मैं इस तरह मेरे मार्ग से सेट किया हुआ:

// Setup for router and routes 
'Zend\Mvc\Router\RouteStack' => array(
    'parameters' => array(
     'routes' => array(
      'default' => array(
       'type' => 'Zend\Mvc\Router\Http\Segment', 
       'options' => array(
        'route' => '/[:slug]', 
        'constraints' => array(
        'slug' => '[a-zA-Z][a-zA-Z0-9_\/-]*' 
        ), 
       'defaults' => array(
        'controller' => 'Htmlsite\Controller\BootController', 
        'action'  => 'index', 
        'slug' => 'home' 
        ), 
       ), 
      ), 
     'home' => array(
      'type' => 'Zend\Mvc\Router\Http\Literal', 
      'options' => array(
       'route' => '/', 
       'defaults' => array(
        'controller' => 'Htmlsite\Controller\BootController', 
        'action'  => 'index', 
        ), 
       ), 
      ), 
     ), 
    ), 
), 

आप देख सकते हैं, मैं एक चर स्लग बनाने के लिए कोशिश की है। मैं इस चर का उपयोग कैसे कर सकता हूं?

+3

संग्रह उद्देश्य के लिए: http: // stackoverflo यहां बहुत पूर्ण उत्तर दें w.com/questions/12077126/how-to-access-route-post-get-etc-parameters-in-zend-framework-2 – leticia

उत्तर

26
here से

:

$slug = $this->getEvent()->getRouteMatch()->getParam('slug'); 

अधिक प्रलेखन here, लेकिन यह अधूरा की तरह लग रहा है।

+0

धन्यवाद! बस मुझे क्या चाहिए :-) – koko

55

या बस:

$slug= $this->params('slug'); 
19

आप बस इस रूप में अच्छी तरह

$this->params()->fromQuery('slug',null); 
$this->params()->fromPost('slug',null); 

मुझे आशा है कि यह काम करता है का उपयोग कर सकते हैं ...

25

क्यों नहीं इस एक:

$this->params()->fromRoute('slug'); 
+7

यह अब पसंदीदा तरीका है। – Diemuzi

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