首页 > 解决方案 > 如何从编码的 URL 获取 Yii 2 中的请求变量?

问题描述

我的问题很基本,但我无法弄清楚 - 也许我在这里遗漏了一些基本概念。

我正在这样的菜单中创建一个链接 URL:

['label' => Icon::show("newspaper") . Yii::t('app', 'News'), 'url' => ['site/index', ['section' => 'news']], 'options' => ['class' => 'mobile-menu']],

它生成以下 URL(出现在地址栏中):

http://localhost/websitename/web/site/index?1%5Bsection%5D=main

我无法使用从 URL 中提取 GET 变量Yii::$app->request->getQueryParam('section')- 这是我需要帮助的地方。我要么用错了,要么我需要事先做点什么,或者我正在以一种糟糕的方式生成 URL……谁知道?:)

注意:如果我像这样手动输入地址栏,它会起作用:

http://localhost/websitename/web/site/index?section=main

所以我认为 URL 编码把事情搞砸了(部分)......

提前谢谢了!安德拉斯

标签: httpparametersrequestyii2

解决方案


您已将参数嵌套在另一个数组中。他们只需要key => valueurl数组中。

['label' => Icon::show("newspaper") . Yii::t('app', 'News'), 'url' => ['site/index', 'section' => 'news'], 'options' => ['class' => 'mobile-menu']],

推荐阅读