gpt4 book ai didi

include - PHP 脚本检测到它是一个包含

转载 作者:行者123 更新时间:2023-12-05 09:00:12 25 4
gpt4 key购买 nike

我有一个 PHP 类文件,它通过 Web 服务器和 cron 进程用作包含。我正在寻找一种方法将一些代码添加到脚本的头部,以便我可以检测脚本是否直接从命令行启动而不是包含在另一个脚本中。通过这种方式,我可以通过直接调用脚本并让函数实例化对象并在其上执行一些代码来简化测试,而无需为其创建包装器脚本。

我尝试使用 if (php_sapi_name() == 'cli') { 但即使脚本包含在从命令行调用的另一个脚本中,测试结果也是如此。

最佳答案

检查是否设置了 $argv[0] 可以让您知道是否从命令行调用了东西;它不会告诉您文件是直接调用的还是从另一个文件中包含的。要确定这一点,请测试是否 realpath($argv[0]) == realpath(__FILE__)

综合起来:

if (isset($argv[0]) && realpath($argv[0]) == realpath(__FILE__))
// This file was called directly from command line

关于include - PHP 脚本检测到它是一个包含,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5732867/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com