我使用内部函数function_exists
,它可以返回true
但我在项目中找不到自定义函数。我还调试了我的代码来跟踪函数,但是调试器没有进入我的自定义函数。我很期待知道为什么。请帮帮我,谢谢。
答案 0 :(得分:2)
要找出定义函数的位置,请使用以下代码:
<?php
$rf = new ReflectionFunction('my_fuction_name');
echo 'file:' . $rf->getFileName() . ', line:' . $rf->getStartLine();
?>
请注意,如果函数未在源代码中定义,但是它的内部PHP函数,则getFileName()
和getStartLine()
都将返回false
。
您可以检查该功能是否是内部的:
<?php
$rf = new ReflectionFunction('my_fuction_name');
if($rf->isInternal() === TRUE){
echo "Function is internal!";
}else{
echo "Function is not internal.";
}
?>