在OS X中的localhost上的PHP中的绝对路径问题

时间:2010-10-06 06:21:42

标签: php osx-snow-leopard root absolute-path

我在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的网址中的相对路径问题

2 个答案:

答案 0 :(得分:1)

__FILE__常量包含文件路径,没有别的。查看$_SERVER['REQUEST_URI'] and $_SERVER['HTTP_HOST']以找出用于调用脚本的URL。这是环境信息,必须由启动PHP脚本的Web服务器(例如Apache)提供,这不是PHP本身所知的。

答案 1 :(得分:0)

我认为你可以使用我错了:

poll()

批评欢迎。