我在PHP中定义了绝对路径的问题。 我这样定义 SITE_ROOT
和 APP_PATH
:
defined('SITE_ROOT') ? null :
define('SITE_ROOT', str_replace('//','/',dirname(__FILE__)) );
defined('APP_PATH') ? null : define('APP_PATH', SITE_ROOT.DS.'application');
在类似的应用程序中使用 APP_PATH
时:
echo APP_PATH;
...这是我得到的:
/Users/user/Sites/MyWebsite/application
我想要的是输出为:
localhost/application
这样做有什么非愚蠢的方法吗?
我的使用案例是使用APP_PATH
(已经用于执行我的所有require()
)与HTML回应,以避免href
的网址中的相对路径问题
答案 0 :(得分:1)
__FILE__
常量包含文件路径,没有别的。查看$_SERVER['REQUEST_URI']
and $_SERVER['HTTP_HOST']
以找出用于调用脚本的URL。这是环境信息,必须由启动PHP脚本的Web服务器(例如Apache)提供,这不是PHP本身所知的。
答案 1 :(得分:0)
我认为你可以使用我错了:
poll()
批评欢迎。