fed*_*o-t 4 php class include autoload
手动包含PHP类时,可以在当前脚本运行时执行,对吧?然后你可以决定,如果条件匹配你加载它,如果不匹配你没有.像这样:
if ( $_SERVER['REQUEST_METHOD'] === 'POST' ) {
include '../../../Whatever/SanitizeUserInput.class.php';
SanitizeUserInput::sanitize($_POST['someFieldName']);
}
Run Code Online (Sandbox Code Playgroud)
但是,假设我在此课程中使用了自动加载功能.它会在开头有效加载还是仅在使用时加载?
我的意思是,我是否应该__autoload只在我100%确定我将在任何脚本(例如数据库连接,会话管理等)中使用的类中添加该函数?
谢谢
只有在尝试访问所需的类时才会调用自动加载.最好用spl_autoload_register()而不是__autoload
文档:
您可以定义一个__autoload()函数,如果您尝试使用尚未定义的类/接口,则会自动调用该函数.
和
spl_autoload_register()为自动加载类提供了更灵活的替代方法.因此,不鼓励使用__autoload(),将来可能会弃用或删除.