我有两个文件
1 - index.php 2 - main.php
index.php 按<?php require_once("../../includes/main.php"); ?>
如何在 main.php 执行时知道
如果 index.php 打电话给他或同一个用户执行它独立?
如果是require_once,我应该在主php内部继续运行程序?
THX
答案 0 :(得分:2)
我之前通过在include之前设置变量,然后执行include来完成此操作。例如:
$included_main_from = 'index.php';
require ('../../includes/main.php');
然后在main.php中检查该变量及其值是什么。
答案 1 :(得分:2)
许多框架在index.php
中定义常量,在main.php
中,您可以使用defined()
检查它是否存在。您可以通过调试回溯功能获得更多信息,但不应在生产/检查中使用它。
答案 2 :(得分:1)
另一种方法是使用get_included_files()
- 包含其他的“main”文件将始终显示在顶部=是返回数组的第0个元素:
if (get_included_files()[0] !== __FILE__) {
// ..included
} else {
// ..not included
}
这在大多数情况下都有效。