我正在尝试从我编写的函数中获取URL。但是因为函数包含在文件中,所以它包含了包含路径而不是url。有工作吗?
我应该得到/example.php,但我得到包含/ url-logger.php
这是通过$ _SERVER ['request_uri']
完成的欢呼声
答案 0 :(得分:1)
您需要在想要名称的PHP文件中使用特殊的__FILE__
。这将为您提供完整的服务器路径(例如/var/www/sitename/file.php
之类的内容),因此要获取URL,您需要执行以下操作:
$path = str_replace( $_SERVER['DOCUMENT_ROOT'], '', __FILE__ );
$url = 'http://' . $_SERVER['HTTP_HOST'] . $path;
(注意你可能需要额外的正斜杠......)
编辑:基于对其他答案的评论,您可能只需要$_SERVER['PHP_SELF']
,这很难说。
答案 1 :(得分:0)
我不确定你的意思,但也许echo $_SERVER['SCRIPT_FILENAME']
和echo __FILE__
会有所帮助?