我想获取正在运行的脚本的文件名(但不包括它正在调用)。PHP魔术常量
echo basename(__FILE__); # will always output include.php
echo basename($_SERVER['SCRIPT_FILENAME']);
# This will do what I want (echo myscript.php), but I was wondering if there was
# a better way to grab it, as I have had problems with $_SERVER['SCRIPT_FILENAME']
# when running certain scripts from a cron.
有什么建议吗?
<?
#myscript.php
require('include.php');
echo "Hello all";
?>
<?
#include.php
echo basename(__FILE__);
echo basename($_SERVER['SCRIPT_FILENAME']);
?>
谢谢!
只是为了让你知道,由于某种原因,我使用$ _SERVER ['SCRIPT_FILENAME']和可能$ _SERVER ['SCRIPT_NAME']的旧服务器在通过cron运行时没有返回任何内容。但是,我想通过SCRIPT_FILENAME使用SCRIPT_NAME。所以谢谢 – Lizard 2009-09-29 09:29:06
$ _SERVER [“argv”] [0]可能有你想要的。 – Neel 2009-09-29 09:30:22
argv [0]是脚本名称,因为它由cmd行调用,所以包含的路径是绝对路径,相对路径(path/name.php,./path/name.php等),具体取决于您调用脚本的__how__ 。此外,它可能是未定义,当不在气候环境 – drAlberT 2009-09-29 10:04:37