如何在 Yii 中从 referrer url 获取 $_GET 变量?

How to get $_GET variables from referrer url in Yii?

我尝试通过 Ajax 在服务器上上传图像,当服务器捕获文件时,文件正在写入数据库。但是现在我需要解析 referrer url 来获取 Id。 现在我只有这个解决方案:

public function actionAjaxTest()
{
  if(Yii::app()->request->isAjaxRequest)
  {
    echo json_encode(parse_url(Yii::app()->getRequest()->getUrlReferrer()));
  }
  Yii::app()->end();
}

Yii 有编码成变量的函数吗?

第一。将规则添加到您的配置 url 规则:

'urlManager' => array(
            'urlFormat' => 'path',
            'showScriptName' => false,
            'rules' => array(
                .........
                '<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
                .........
            ),
        ),

第二。您的操作将如下所示:

public function actionAjaxTest($id)

例如,$id=123 来自您的 url '/controller/ajaxTest/123'。

第三。在生成 url 的地方使用:

$this->createUrl("/controller/ajaxTest",array("id"=>$id))