Skip to content

Instantly share code, notes, and snippets.

@ekandreas
Last active October 17, 2018 17:07
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ekandreas/c79af3743bd38e805356b887dbf57ca0 to your computer and use it in GitHub Desktop.
Save ekandreas/c79af3743bd38e805356b887dbf57ca0 to your computer and use it in GitHub Desktop.
Legacy autoload example
<?php
/*
* Legacy autoload example
*/
spl_autoload_register(function ($requestedClass) {
$baseClass='ElseifAB\\Regnradar';
if (0!=strpos($requestedClass, $baseClass.'\\', 0)) {
return false;
}
static $loaded = [];
if (isset($loaded[$requestedClass])) {
return $loaded[$requestedClass];
}
$fileClass = str_replace($baseClass, '', $requestedClass);
$fileClass = str_replace('_', '-', $fileClass);
$fileClass = str_replace('\\', DIRECTORY_SEPARATOR, $fileClass);
$fileClass.='.php';
$fileClass=__DIR__.$fileClass;
if (!file_exists($fileClass)) {
return false;
}
return $loaded[$requestedClass] = (bool)require $fileClass;
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment