我正在尝试使用以下代码获取Kohana 3.2中的引荐来源URI:
$referrer = $this->request->referrer();
var_dump($referrer);
然而,该函数返回NULL,我希望它返回我离开的页面到达这个。
它应该如何运作......如果是这样,我错过了什么或做错了什么?
这是在Controller中运行的。
此处的文档:http://kohanaframework.org/3.2/guide/api/Request#referrer
答案 0 :(得分:3)
我遇到的问题是我的Kohana系统设置的原因。基本上我在我的系统中间有一个routeHandler来控制用户所采用的路由。在该脚本中生成了一个新请求,然后执行。
发生的事情是在创建新请求对象时没有添加引用者uri。我添加了以下代码,现在我可以在路由过程结束时从控制器获取引用uri。
$referrer = $this->request->referrer();
$request = new Request($uri);
$request->referrer($referrer);
echo $request->execute()
->send_headers()
->body();
另外,atma建议的更清洁的本机解决方案如下:
Request::initial()->referrer()