Php 服务器实际路径
不知是否有人能帮助我 我正在尝试检索xml文件的文件路径,该文件用于在我正在构建的图像库脚本中创建 我的文件夹结构如下: 网站/开发/上传文件/“用户名”文件夹/“位置” folder/file.xml 我把这些放在一起,试图找到路径:Php 服务器实际路径,php,Php,不知是否有人能帮助我 我正在尝试检索xml文件的文件路径,该文件用于在我正在构建的图像库脚本中创建 我的文件夹结构如下: 网站/开发/上传文件/“用户名”文件夹/“位置” folder/file.xml 我把这些放在一起,试图找到路径: <?php chdir('var/www/'); echo realpath('./././file.xml'); ?> 但我收到以下错误: 警告:chdir()[function.chdir]:没有这样的文件或目录(errno 2) 在第2
<?php
chdir('var/www/');
echo realpath('./././file.xml');
?>
但我收到以下错误:
警告:chdir()[function.chdir]:没有这样的文件或目录(errno 2)
在第2行的/homepages/2/d333603417/htdocs/development/real.php中
我确信我在这里犯了一个初学者的错误,但我想至少尝试一下。我只是想知道是否有人可能会在这件事上大发雷霆,让我知道我哪里做错了
非常感谢这是因为有两种类型的Unix路径: 绝对路径:
/var/www/
(始终以/
开头)
相对路径:var/www/
(相对于您所在的位置。开头没有/
)
如果您点击/var/www/
,您将进入/var/www/
如果您选择chdir到var/www/
您选择chdir到/var/www/
您在中还有一个错误
/
-表示您当前的目录。使用/
会将您留在当前目录中
如果要按目录树向上移动,请使用。/
(表示父目录)。这是因为有两种类型的Unix路径:
绝对路径:/var/www/
(始终以/
开头)
相对路径:var/www/
(相对于您所在的位置。开头没有/
)
如果您点击/var/www/
,您将进入/var/www/
如果您选择chdir到var/www/
您选择chdir到/var/www/
您在中还有一个错误
/
-表示您当前的目录。使用/
会将您留在当前目录中
如果您想按目录树向上移动,请使用。/
(表示父目录)。如果您想获得文件相对于php文件的绝对路径,通常更容易执行类似于dirname(uu file_uu)的操作。'/path/to/file'
,因为它比使用相对路径的chdir更容易预测。您也可以只回显它以进行调试
因此,在您的情况下,看起来您可能想要这样的东西:
$file = dirname(__FILE__)."/UploadedFiles/$username/$location/file.xml";
如果需要向上遍历目录,可以使用多个目录名:
$file = dirname(dirname(__FILE__))."/UploadedFiles/$username/$location/file.xml";
如果您想获得文件相对于php文件的绝对路径,通常更容易执行类似于dirname(\uuu file\uu)。'/path/to/file'
的操作,因为它比使用相对路径的chdir更容易预测。您也可以只回显它以进行调试
因此,在您的情况下,看起来您可能想要这样的东西:
$file = dirname(__FILE__)."/UploadedFiles/$username/$location/file.xml";
如果需要向上遍历目录,可以使用多个目录名:
$file = dirname(dirname(__FILE__))."/UploadedFiles/$username/$location/file.xml";
有了/
你基本上还是在同一个目录下。有了/
你基本上还是在同一个目录下。你好@mensi,非常感谢你抽出时间来帮助我。请原谅我问了一个非常愚蠢的问题,但是你能告诉我我是否要将thsi文件添加到根目录并从那里运行它吗?友善的regards@IRHM只要相对路径保持不变且正确,文件位于何处并不重要。FILE指向写入的文件的绝对路径,因此相应地调整dirname的数量。这也适用于include,因为文件指的是它编写的实际文件,而不是Web服务器最初加载的脚本。您好@mensi,非常感谢您抽出时间来帮助我。请原谅我问了一个非常愚蠢的问题,但是你能告诉我我是否要将thsi文件添加到根目录并从那里运行它吗?友善的regards@IRHM只要相对路径保持不变且正确,文件位于何处并不重要。FILE指向写入的文件的绝对路径,因此相应地调整dirname的数量。这也适用于include,因为文件引用了它所写入的实际文件,而不是webserver最初加载的脚本。嗨,非常感谢您回复我的文章。了解这一点非常有用,特别是对于初学者。谢谢你回复我的帖子。了解这一点非常有用,特别是对于初学者。问候