如何在php中的路由中添加查询字符串?

时间:2016-02-15 22:19:12

标签: php routing kohana-3

我正在尝试默认将默认主页路由设置为某个类别。

在我的routes.php文件中我已将发布新操作重新路由到主页,因为我希望帖子的广告表单成为主页,但在尝试添加查询字符串时我遇到错误“ ?类别=想要的广告“

我的目标是我希望它默认为表单选项 /publish-new.html?category=wanted-ads页面。

为一个简单的问题道歉,我是php和kohana框架的新手,我正在使用开放的分类脚本来创建一个分类网站。

提前致谢。

 URL::title(__('publish new'))

Route::set('post_new', URL::title(__('publish new')).'.html')
->defaults(array(
        'controller' => 'new',    
        'action'     => 'index',
));

1 个答案:

答案 0 :(得分:0)

您是否尝试手动获取查询字符串参数($ _GET)?如果是的话,会显示什么?

通过快速阅读Kohana文档,我找到了可以帮助你的东西。相反,您可以通过查询字符串传递所需的类别,您可以通过参数传递。

Route::set('post_new', '/post_new/category/:<category>', array('category' => '.*'))
    ->defaults(array(
        'controller' => 'new',
        'action' => 'index',
));

要获得此参数,您只需执行此操作:

// From within a controller:
$this->request->param('category');

// Can be used anywhere:
Request::current()->param('category');

这在许多其他框架中都很完美,在Kohana中也可以正常工作。

来源:https://kohanaframework.org/3.2/guide/kohana/routing#examples