Zend框架中Controller-Action中get参数的不同获取方式有什么区别?


What's difference between different ways to get GET parameter in Controller-Action in Zend framework 2?

我找到了几种方法来获得GET参数在控制器>动作在Zend框架2:

 $this->params()->fromRoute('id');
 $this->params('id');
 $this->getRequest()->getQuery()->get('id');

这些方式有什么区别吗?

我猜,params('id')可能同时给出GETPOST的值。fromRoutegetQuery将仅从GET中给出值,但fromRoute可能会提供一些优势,如卫生或其他?

$this->params()->fromRoute('id');

使用params插件并返回一个命名的路由参数。这用于段路由中的参数(例如:'slug'来自/blog/:slug或'year'来自/archive/:year/:month/:day).

$this->params('id');

这是$this->params()->fromRoute('id');的简写。

$this->getRequest()->getQuery()->get('id');

从查询字符串中获取一个值