相关疑难解决方法(0)

如何在PHP中获取调用函数/方法的名称?

我知道函数debug_backtrace,但我正在寻找一些准备使用的函数实现GetCallingMethodName()吗?如果它也给了方法的类(如果它确实是一个方法),那将是完美的.

php

205
推荐指数
9
解决办法
21万
查看次数

包含的PHP文件可以知道它包含在哪里吗?

例如,

这是index.php

<?
require_once('header.php');
?>
Run Code Online (Sandbox Code Playgroud)

header.php能知道它被index.php包含了吗?

- 编辑 -

我找到了解决方案:

function backtrace_filename_includes($name){
    $backtrace_array=debug_backtrace();
    if (strpos($backtrace_array[1]['file'],$name)==false){
        return false;
    }else{
        return true;
    }
}
Run Code Online (Sandbox Code Playgroud)

header.php文件

<?
if (backtrace_filename_includes('index.php')) echo "index.php";
?>
Run Code Online (Sandbox Code Playgroud)

php

18
推荐指数
2
解决办法
7072
查看次数

如何在 PHP 中获取被调用者?

可能的重复:
PHP 5 中的调用函数?

我想知道从哪里调用全局函数或公共方法。我想我可以通过检查 debug_backtrace 来做到这一点,但我宁愿使用一种更轻量级的机制(如果存在)。有什么建议么?

例如,如果您想象 get_callee() 函数和常量存在:

function doSomething() {
     if(get_callee() == 'PHP_GLOBAL') { throw new IllegalAccessException(); }
     ...
}
Run Code Online (Sandbox Code Playgroud)

php language-features

6
推荐指数
1
解决办法
7067
查看次数

标签 统计

php ×3

language-features ×1