Php - 获取父脚本名称

2022-08-30 23:07:15

父.php:

require_once 'child.php';

孩子.php:

echo __FILE__;

它将显示“.../孩子.php”

我怎样才能得到“.../父母.php”


答案 1

所选答案仅适用于设置服务器变量的环境,特别是不适用于 CLI 脚本。此外,它不确定父级,而仅确定最顶层的脚本文件。

您可以通过查看$argv[0]从CLI脚本中执行几乎相同的操作,但这并不能提供完整的路径。

独立于环境的解决方案使用debug_backtrace

function get_topmost_script() {
  $backtrace = debug_backtrace(
      defined("DEBUG_BACKTRACE_IGNORE_ARGS")
      ? DEBUG_BACKTRACE_IGNORE_ARGS
      : FALSE);
  $top_frame = array_pop($backtrace);
  return $top_frame['file'];
}

答案 2
print $_SERVER["SCRIPT_FILENAME"];

推荐