php - Ignoring autoloader in certain files -


i have function below autoloads classes before registering them new classes.

function __autoload($controller){      $ce = explode('\\', $controller);      require root . '/app/base/classes/' .      end($ce) . '/class.' .      end($ce) . '.php'; } 

how can ignore autoloader 1 class? reason behind because installed package , class file directory class files in...

try require package file containing class need, before calling new oneclass().

for example, if have [root]/app/base/classes/oneclass/class.oneclass.php alongside [root]/app/custom/packages/oneclass.php, may:

require root . '/app/custom/packages/oneclass.php';  $class = new oneclass(); // instance of /app/custom/packages/oneclass.php 

but best solution using namespaces, described in psr-0 , psr-4 recommendations.

and when use namespaces, , have correct directory/file structure/names, , have correctly described namespaces inside classes:

$my_class = new \app\base\oneclass();  // same class name without conflicts $class_from_package = new \app\custom\packages\oneclass(); 

i think it's more useful approach. have logical directories/files structure reflect namespace structure. , if want load same class name other folder, able using qualified class name correspond namespace.

it can bit weird, use namespaces, if did not use them before. need support correlations between file path , namespace definition time (when moving class file folder, example), after time of using it, pay no more attention namespaces paying tying shoes before going outdoor.


Comments

Popular posts from this blog

java - Run spring boot application error: Cannot instantiate interface org.springframework.context.ApplicationListener -

python - pip wont install .WHL files -

Excel VBA "Microsoft Windows Common Controls 6.0 (SP6)" Location Changes -