PHP 如何获取自身的启动文件?跪求!!!急!!!!!!!!!!!!!!!!
就比如我的php执行文件是/app/php/bin/php
而我的php文件是/home/test/test.php
如何通过/home/test/test.php来获取php自身执行文件的目录?
已证实php.ini和phpinfo()和系统环境变量均没有设置php的自身的启动文件位置。
跪求,急啊
关于 LearnKu
试试getcwd()
看来你不明白我的意思,我不是要获取这个PHP文件的相对目录,我是要获取PHP的二进制文件的路径。就比如你php的环境变量指向的那个路径,但我这个环境变量没有设置
@leo ?
@ZhangYuan
$_ENV['_']还是不行,依旧没有输出php文件的位置,我想要的是/app/php/bin/php,而且不像我这个环境变量还经过设置了
@leo ?
php -r "var_dump(getenv('_'));"这回应该可以了@leo
再来一发
PHP_BINARY这是一个常量@leo
谢谢,这个确实可以?
麻烦回答了
@leo
但是线上环境显示却是fpm
/app/php5/sbin/php-fpm
不和php一致
__FILE__
那只好上大杀器了
https://github.com/symfony/process/blob/ma...
想到一个蠢的方法,手动抛出一个异常,然后try,catch下,然后就可以通过异常getTrace()获取到执行的文件。
try{
throw new \Exception("Error Processing Request", 1);
} catch ( \Exception $e) {
$arr = $e->getTrace();
$file = array_pop($arr);
dd($file['file']);
}
@leo
666
@ab0029
大兄弟,不是php文件的路径,是php二进制文件的路径,就像是win的php.exe