PHP:如何将当前工作目录设置为与执行脚本的目录相同

发布于 2024-10-21 06:52:39 字数 374 浏览 6 评论 0原文

我正在将我的网站从一台服务器转移到另一台服务器。我有一些使用 is_read 函数的 php 脚本,该函数使用当前工作目录。

在旧服务器上,当我调用 getcwd() 时,它会输出正在执行脚本的文件夹。在新服务器上,它输出根目录“/”。

我想知道如何配置 PHP 使用当前文件夹而不是“/”。 我不想更改任何已在旧服务器上运行的 PHP 代码。我可以配置新服务器,但不知道要更改哪些设置。我正在使用 apache2,如果有帮助的话。

编辑:似乎我的工作目录不像我想象的那样是根目录。当我创建 testFile.php 并 echo getcwd() 时,它显示 php 文件所在的目录。但是在我的问题文件中,在同一目录中,getcwd() 显示为“/”

I'm in the process of transferring my website from one server to another. I have some php scripts that use the is_readable function which uses the current working directory.

On the old server, when I call getcwd(), it outputs the folder in which the script is being executed. On the new server it outputs the root directory '/'.

I would like to know how I can configure PHP to use the current folder instead of '/'. I don't want to have to change any PHP code that already works on the old server. I can configure the new server, but don't know what settings to change. I'm using apache2, if that helps.

EDIT: It seems as though my working directory is not root like I thought. When I create a testFile.php and echo getcwd() it shows the directory the php file is in. But in my problem file, in the same directory, getcwd() shows up as '/'

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

七颜 2024-10-28 06:52:39

chdir(__DIR__);

chdir(dirname(__FILE__));

(参见 chdir魔法常量)。

但这应该是默认的。

chdir(__DIR__);

or

chdir(dirname(__FILE__));

(see chdir and magic constants).

But that should be by default.

好多鱼好多余 2024-10-28 06:52:39

这在 CLI 模式下是正常的:

它不会将工作目录更改为脚本的工作目录。 (保留 -C 和 --no-chdir 开关以实现兼容性)

一个快速的解决方法是

chdir(dirname(__FILE__));

This is normal in CLI mode:

It does not change the working directory to that of the script. (-C and --no-chdir switches kept for compatibility)

a quick workaround would be

chdir(dirname(__FILE__));
走走停停 2024-10-28 06:52:39

如果>= PHP 5.3,您可以使用 dirname(__FILE__)__DIR__ 获取脚本所在的当前目录。

You can get the current directory a script is in with dirname(__FILE__) or __DIR__ if >= PHP 5.3.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文