php chdir() 直接到主目录

Posted

技术标签:

【中文标题】php chdir() 直接到主目录【英文标题】:php chdir() direct to home directory 【发布时间】:2011-07-18 10:01:26 【问题描述】:

如何更改 php 中的目录: 我试过这个:

chdir('\');

但这不会改变目录。 我正在使用 php-cli

我更喜欢跨平台解决方案(即 windows 、 linux 、 mac 通用)

【问题讨论】:

这甚至不应该做任何事情,因为\ 是一个转义字符,通过编写\',您正在转义撇号,而不是关闭字符串。 但是当我这样做时它不会给出语法错误“\” 附带说明:在 *nix 环境中,您可能无法访问定义的 webserver-serv-directory 之外的任何内容(例如/var/www/。我不确定如何处理不过在 Windows 上。 而且即使我这样做“\””仍然对我没有任何好处 @kritya:没有语法错误?我明白了:Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting ')' 【参考方案1】:

如果要切换到主目录,可以使用:

chdir($_SERVER['HOMEPATH']);

这种方式甚至可以跨平台。

编辑:

如果您的意思是“主目录”作为驱动器上的***目录,您可以使用:

chdir($_SERVER['HOMEDRIVE']);

【讨论】:

【参考方案2】:
if (stristr (PHP_OS, 'Win'))  
   chdir('C:\\');
 elseif (stristr (PHP_OS, 'Lin'))  
   chdir('/');
 else 
    chdir($_SERVER['HOMEPATH']);

    //i am not sure what does MAC use as its root

试试这个。通过单 \ 你转义单引号

【讨论】:

仍然是一个错误:PHP 警告:chdir(): No such file or directory (errno 2) in /var/www/pbot/index.php on line 10 答案再次编辑。你在linux上。 Linux 使用 ../ 进入上一个目录 pbot 或 / 的基本目录? 也许我在解释我想去 dir '/' 如果使用 linux 或者如果使用 windows 例如 'C:' 时犯了一些错误【参考方案3】: http://alanhogan.com/tips/php/directory-separator-not-necessary

只要使用正斜杠“/”就可以了。 Windows 不介意,它最适合 *nix 操作系统。

基于以上:

 chdir('/'); 
 // current directory
 echo getcwd() . "\n";

您是否在任何地方看到错误?

警告:chdir() [function.chdir]: Permission denied (errno 13)

【讨论】:

以上是关于php chdir() 直接到主目录的主要内容,如果未能解决你的问题,请参考以下文章

java无法找到或加载主类是怎么回事?

php 的chdir函数有啥用途??

chdir 改变当前目录为起始目录

PHP无法连接到数据库配置

XAMPP - 如何从主目录执行 PHP 文件?

PHP chdir() 函数