在 PHP 中,使用 CLI 时确保当前工作目录与脚本相同的最佳方法
Posted
技术标签:
【中文标题】在 PHP 中,使用 CLI 时确保当前工作目录与脚本相同的最佳方法【英文标题】:In PHP, Best way to ensure current working directory is same as script , when using CLI 【发布时间】:2010-09-16 13:34:37 【问题描述】:通过 cli 调用 php 时,当前目录不会更改为脚本所在的目录。我在 crontab 中运行的所有脚本都是通过 CLI 运行的,所以这是一个问题。
我目前正在修复这个问题,方法是使用脚本所在的绝对路径执行 chdir(),但我真的不喜欢将路径硬编码成这样的东西。
我正在寻找最便携/最可靠的方法来确保当前工作目录是它所在的脚本所在的目录。
【问题讨论】:
【参考方案1】:chdir(dirname(__FILE__));
【讨论】:
【参考方案2】:您可以使用__FILE__
获取执行文件本身的完整绝对路径:
<?php
echo "I'm here: ".__FILE__."\n";
?>
请参阅the documentation 了解更多信息。
【讨论】:
以上是关于在 PHP 中,使用 CLI 时确保当前工作目录与脚本相同的最佳方法的主要内容,如果未能解决你的问题,请参考以下文章
CentOS 6.8 PHP-FPM 无法与 PHP CLI 一起正常工作
一些需要禁用的PHP危险函数(disable_functions)