我有以下帮助程序在我的应用程序中获取当前页面的完整URL:
public function selfURL()
{
$pageURL = 'http';
if ($_SERVER["HTTPS"] == "on")
{
$pageURL .= "s";
}
$pageURL .= "://";
if ($_SERVER["SERVER_PORT"] != "80")
{
$pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
}
else
{
$pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
}
return $pageURL;
}
然而,当我使用它时,我会遇到两个问题:
1。)以下错误:
Undefined index: HTTPS [APP/View/Helper/LinkHelper.php, line 11]
2。)网址丢失了斜线,而不是获取:
http://localhost:8888/social/users/add/
我得到http:/localhost:8888/social/users/add
,然后炸毁我的申请。
为什么我会收到这些错误?
答案 0 :(得分:0)
$_SERVER['HTTPS']
可能未设置。因此使用
if (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off')
使用您显示的代码,这是不可能的。需要更多调试,确切地说丢失了斜杠。