所以我在我的服务器上运行PHP 5.6,我试图检查一个函数是否存在,当我输入这段代码时。PHP function_exists不工作,并返回false
<?php
$functionName = 'SalesWeek';
if (function_exists($functionName)) {
$functionName();
} else {
echo "No function exists for ".$functionName."\n";
}
function SalesWeek(){
echo "Hello!";
}
我每次运行它都会失败。但是如果我把这个完全相同的代码放在别的东西上,例如phptester.net,它就可以正常工作。我使用codeigniter,所以我想也许它必须这样做,所以我试着改变公共和私人的功能,看看它是否有所作为。有任何想法吗?
“我试着改变公共和私人的功能,看看它是否有所作为”你确定,你不是在谈论一种方法吗?函数(类之外)没有修饰符。 – tkausl
它在一个类的内部,但它的定义与上面我输入的一样。我只是试图把它放在函数之外,然后检查工作,但通话不。即,它表示函数存在,但然后我的调用$ functionName();不起作用。 – CMOS
如果您正在尝试检查@tkausl所说的方法,请选中[method_exists](http://php.net/manual/en/function.method-exists.php)。 – FirstOne