Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/241.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在PHP中获取服务器上的绝对路径_Php - Fatal编程技术网

在PHP中获取服务器上的绝对路径

在PHP中获取服务器上的绝对路径,php,Php,我想要一个文件的绝对路径,从 http://...../file.jpg. 但是我得到的是 \/home\/abc\/public_html\/def\\file.JPG 也不知道“/”的原因 我使用的代码是 dirname(__FILE__)."\\file.jpg" 有什么帮助吗?这应该可以: $path = substr( __FILE__, strlen( $_SERVER[ 'DOCUMENT_ROOT' ] ) ); $url = $_SERVER['SERVER_NAME'

我想要一个文件的绝对路径,从

http://...../file.jpg. 
但是我得到的是

\/home\/abc\/public_html\/def\\file.JPG
也不知道“/”的原因 我使用的代码是

dirname(__FILE__)."\\file.jpg"
有什么帮助吗?

这应该可以:

$path = substr( __FILE__, strlen( $_SERVER[ 'DOCUMENT_ROOT' ] ) );
$url = $_SERVER['SERVER_NAME'].$path;

这适用于
$\u服务器['SCRIPT\u URI']
。只需将结果与您的域名连接起来:

$domain = 'http://www.example.com' . $_SERVER['SCRIPT_URI'];

您应该将url与上传文件的http路径连接起来,您所指的是文件的目录路径。但介于两者之间的public_html\/def呢?必须有一些php内置(不知道)才能在服务器上获得绝对路径,或者至少通过连接它应该可以工作。但是我不知道那是什么
public\u html
是应用程序的公共目录。如果图像位于
def
文件夹中,则url将为
http://example.com' . “/def/$file”
对我来说工作正常……如何引用当前文件以外的文件?i、 我的当前文件是current.php,但我想要文件夹/file.jpg的绝对路径?