在 Zend Framework 2 的 Controller-Action 中获取 GET 参数的不同方式有什么区别?
What's difference between different ways to get GET parameter in Controller-Action in Zend framework 2?
我在 Zend Framework 2:
Controller > Action 中找到了几种获取 GET
参数的方法
$this->params()->fromRoute('id');
$this->params('id');
$this->getRequest()->getQuery()->get('id');
这些方式有什么区别吗?
我想,params('id')
可能会同时给出 GET
和 POST
的值。
fromRoute 和 getQuery 只会给出 GET
的值,但是 fromRoute
可能会提供一些优势,比如卫生什么的?
$this->params()->fromRoute('id');
这使用 params plugin 和 returns 单个命名路由参数。这用于段路由中的参数(例如 /blog/:slug
中的 'slug' 或 /archive/:year/:month/:day
中的 'year')。
$this->params('id');
这只是 shorthand $this->params()->fromRoute('id');
。
$this->getRequest()->getQuery()->get('id');
这从查询字符串中获取一个值。
我在 Zend Framework 2:
Controller > Action 中找到了几种获取GET
参数的方法
$this->params()->fromRoute('id');
$this->params('id');
$this->getRequest()->getQuery()->get('id');
这些方式有什么区别吗?
我想,params('id')
可能会同时给出 GET
和 POST
的值。
fromRoute 和 getQuery 只会给出 GET
的值,但是 fromRoute
可能会提供一些优势,比如卫生什么的?
$this->params()->fromRoute('id');
这使用 params plugin 和 returns 单个命名路由参数。这用于段路由中的参数(例如 /blog/:slug
中的 'slug' 或 /archive/:year/:month/:day
中的 'year')。
$this->params('id');
这只是 shorthand $this->params()->fromRoute('id');
。
$this->getRequest()->getQuery()->get('id');
这从查询字符串中获取一个值。