1.路径
当前页面url Yii::app()->request->url; 跳转前一个页面url $this->redirect(Yii::app()->request->urlReferrer); 根目录URL Yii::app()->baseUrl 或 Yii::app()->request->baseUrl; 自定义URL $this->createUrl('post/read',array('id'=>100))或Yii::app()->createUrl();
2.请求参数
要获取请求参数,你可以调用 request 组件的 yii\web\Request::get() 方法和 yii\web\Request::post() 方法。 他们分别返回 $_GET 和$_POST 的值。例如,
$request = Yii::$app->request; $get = $request->get(); // 等价于: $get = $_GET; $id = $request->get('id'); // 等价于: $id = isset($_GET['id']) ? $_GET['id'] : null; $id = $request->get('id', 1); // 等价于: $id = isset($_GET['id']) ? $_GET['id'] : 1; $post = $request->post(); // 等价于: $post = $_POST; $name = $request->post('name'); // 等价于: $name = isset($_POST['name']) ? $_POST['name'] : null; $name = $request->post('name', ''); // 等价于: $name = isset($_POST['name']) ? $_POST['name'] : ''
3.请求方法
你可以通过 Yii::$app->request->method 表达式来获取当前请求使用的HTTP方法。 这里还提供了一整套布尔属性用于检测当前请求是某种类型。 例如,
$request = Yii::$app->request; if ($request->isAjax) { /* 该请求是一个 AJAX 请求 */ } if ($request->isGet) { /* 请求方法是 GET */ } if ($request->isPost) { /* 请求方法是 POST */ } if ($request->isPut) { /* 请求方法是 PUT */ }