You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过auto_append_file配置的PHP文件获取主PHP文件名?

解决auto_append_file脚本获取主脚本文件名的问题

嘿,这个场景我之前刚好折腾过,其实不用绕弯子,直接利用PHP的超全局变量就能搞定!

当auto_append_file指定的脚本(比如你的tail.php)被自动追加执行时,它是运行在主脚本(xxx.php)的上下文环境中的,所以主脚本的相关信息会保留在$_SERVER超全局数组里。

你可以在tail.php里用这几个变量来获取:

  • $_SERVER['SCRIPT_FILENAME']:获取主脚本的绝对路径(比如/var/www/xxx.php)
  • $_SERVER['PHP_SELF']:获取主脚本相对于网站根目录的路径(CLI模式下和SCRIPT_FILENAME一致)
  • 如果只想要纯文件名(不带路径),可以配合basename()函数使用

举个实际的例子,把你的tail.php改成这样:

<?php
// 获取主脚本的完整绝对路径
$fullPath = $_SERVER['SCRIPT_FILENAME'];
// 提取纯文件名
$mainFileName = basename($fullPath);

echo "当前主脚本是:$mainFileName\n";
echo "主脚本完整路径:$fullPath\n";

当你运行php xxx.php时,输出就会变成:

当前主脚本是:xxx.php
主脚本完整路径:/你的实际路径/xxx.php

另外要注意,不管是Web环境还是CLI命令行模式,这些变量都能正常工作,完全不需要额外配置~

内容的提问来源于stack exchange,提问作者Radishx

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 03:55:25