php - 如何解析参数的 Zend URL?

标签 php zend-framework

我正在尝试从 ZF REST URL 中提取 GET 参数。这不是当前请求,我不想调用 URL 或执行路由,我只需要参数。我正在寻找类似 parse_url() 的实用函数,但用于 Zend REST 格式。有没有,还是我必须重新发明轮子?

我已经尝试了一些方法,比如创建一个新的 Zend_Controller_Request_Http,但是没有填充参数。这是一个有效的 HTTP URL。

编辑:根据要求,示例 Zend URL:

http://localhost/index/index/param1/foo/param2/bar

所以我只是想从这个 URL 中获取 param1 和 param2。

编辑 #2:我试过了,但它似乎不起作用:

$request = new Zend_Controller_Request_Http('http://localhost/home/test/param1/foo/param2/bar');
$front = Zend_Controller_Front::getInstance();
$route = new Zend_Rest_Route($front);
var_dump($route->match($request));

最佳答案

$uri = Zend_Uri::factory( $yourUrl )' 怎么样?参见 Zend_Uri .

编辑:
啊,我现在明白你的意思了。在那种情况下,我相信您应该尝试 Gordon 的建议。通过路由的 match 方法运行您的 url。

可能有一种从路由器检索路由的方法(虽然不确定):

$route = Zend_Controller_Front::getInstance()
                              ->getRouter()
                              ->getRoute( 'theRouteName' );

然后做类似的事情:

$params = $route->match( $yourUrl );

.. 这应该给你一个参数数组。

关于php - 如何解析参数的 Zend URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2458539/

相关文章:

php - 仅使用 php 选择任何表数据时链接表中的一行

php - Zend Framework - 在 dl 中包装 dt dd

mysql - 如何在 zend db 上构建嵌套选择

php - Zend_Db 的包装失败

php - 从邮政编码查找完整地址,解决方案是什么?

php - Mysql选择大于或等于今天的最近项目但仅限于一个日期

php - 字符集编码问题

php - 在数组中添加引号并将其传递到 mysql 数据库的最佳方法是什么

javascript - ExtJS 和 Zend Framework MVC

php - 如何回显数组中的项目数?