Например, скажем, у меня есть следующий код.
$foo = new bar();
И такой автозагрузчик.
function autoload($class_name) {
$class_file_name = str_replace('_', '/', $class_name) . '.php';
if (file_exists($class_file_name)) {
include($class_file_name);
}
}
Но класс, который я действительно хочу загрузить, находится в папке 'foo / bar.php ', а реальное имя класса на самом деле - foo_bar.Есть ли способ динамически изменить имя класса, который загружается автоматически?Например, что-то вроде этого?
function autoload(&$class_name) {
$class_name = 'foo_' . $class_name;
$class_file_name = str_replace('_', '/', $class_name) . '.php';
if (file_exists($class_file_name)) {
include($class_file_name);
}
}
Я знаю, возможно ли что-то подобное, это не совсем лучшая практика, но я все равно хотел бы знать, так ли это.