Spl_autoload_register()抛出一个未定义的常量通知


spl_autoload_register() throws a undefined constant notice

我可能设置错了这段代码,但是当error_reporting设置为E_ALL & ~E_NOTICE时,它可以完美地工作。

function load_fw_phpClass($fw_phpClass_name){
    $fw_class_file=path_to_classes.$fw_phpClass_name.'.class.php';
    file_exists($fw_class_file)?include $fw_class_file:null;
}   spl_autoload_register(load_fw_phpClass);

path_to_classes是一个个人定义的常数。

我将error_reporting更改为E_ALL只是为了检查是否有任何通知-是的,有(2出于相同的原因在不同的行上):
**Notice:** Use of undefined constant load_fw_phpClass - assumed 'load_fw_phpClass' in ...

看起来spl_autoload_register(); -函数将函数名视为常量,并告诉我它尚未定义-这并不奇怪,因为它是一个;它不是常数,其次;它应该只在需要类的时候执行。我的意思是;这不就是使用spl_autoload_register(); -函数的原因吗?

;还有其他人经历过这种"错误"吗?知道怎么处理吗?

您需要使用函数的名称(字符串):

 spl_autoload_register('load_fw_phpClass');