📜  yii2 从 url 获取参数 - PHP (1)

📅  最后修改于: 2023-12-03 14:48:41.067000             🧑  作者: Mango

Yii2 从 URL 获取参数

在 Yii2 中,获取从 URL 传递过来的参数是很常见的操作。本文将为您介绍如何在 Yii2 中从 URL 中获取参数的几种方法。

方法一

Yii2 中最常用的方法是从 $_GET 数组中获取参数。这个方法是用于从没有通过路由规则定义的参数中获取参数的一般方法。例如,以下 URL 包含了两个参数:idname

http://example.com/index.php?r=site%2Fview&id=100&name=John+Doe

您可以按如下方式获取这些参数:

$id = $_GET['id'];
$name = $_GET['name'];
方法二

另一个获取 URL 参数的方法是通过 Yii2 自带的 getUrlParam() 方法。例如,以下 URL 包含了两个参数:idname

http://example.com/index.php?r=site%2Fview&id=100&name=John+Doe

您可以按如下方式获取这些参数:

$id = Yii::$app->getRequest()->getQueryParam('id');
$name = Yii::$app->getRequest()->getQueryParam('name');
方法三

如果您使用的是 UrlManager,则可以使用 createUrl() 方法传递参数。例如:

use yii\helpers\Url;

$url = Url::toRoute(['site/view', 'id' => 100, 'name' => 'John Doe']);
echo '<a href="' . $url . '">My Link</a>';

这里,createUrl() 方法用于创建带参数的 URL。参数 idname 将会被再次传递回 controller method 中。

在您的 controller method 中,您可以像这样获取这些参数:

public function actionView($id, $name)
{
    // ...
}

这三种方法可以轻易地帮助您从 URL 中获取参数,便于您继续您的开发工作。