Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
| Total | CRAP | |
90.91% |
10 / 11 |
||||||
| anonymous function ($class) | |
0.00% |
0 / 1 |
0 | |
90.91% |
10 / 11 |
|||
| <?php | |
| /** | |
| * An example of a project-specific implementation. | |
| * | |
| * After registering this autoload function with SPL, the following line | |
| * would cause the function to attempt to load the \Foo\Bar\Baz\Qux class | |
| * from /path/to/project/src/Baz/Qux.php: | |
| * | |
| * new \Foo\Bar\Baz\Qux; | |
| * Example for prefix | |
| * project-specific namespace prefix | |
| * $prefix = 'Foo\\Bar\\'; | |
| * | |
| * @param string $class The fully-qualified class name. | |
| * @return void | |
| */ | |
| spl_autoload_register( | |
| function ($class) { | |
| $prefix = 'Edtau'; | |
| // base directory for the namespace prefix | |
| $base_dir = __DIR__ . '/src/'; | |
| // does the class use the namespace prefix? | |
| $len = strlen($prefix); | |
| if (strncmp($prefix, $class, $len) !== 0) { | |
| // no, move to the next registered autoloader | |
| return; | |
| } | |
| // get the relative class name | |
| $relative_class = substr($class, $len); | |
| // replace the namespace prefix with the base directory, replace namespace | |
| // separators with directory separators in the relative class name, append | |
| // with .php | |
| $file = $base_dir . str_replace('\\', '/', $relative_class) . '.php'; | |
| // if the file exists, require it | |
| if (file_exists($file)) { | |
| include $file; | |
| } | |
| } | |
| ); |