autoload_target_dir.php 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. <?php
  2. // autoload.php generated by Composer
  3. if (!class_exists('Composer\\Autoload\\ClassLoader', false)) {
  4. require __DIR__ . '/composer' . '/ClassLoader.php';
  5. }
  6. if (!class_exists('ComposerAutoloaderInitTargetDir', false)) {
  7. class ComposerAutoloaderInitTargetDir
  8. {
  9. public static function getLoader()
  10. {
  11. $loader = new \Composer\Autoload\ClassLoader();
  12. $composerDir = __DIR__ . '/composer';
  13. $map = require $composerDir . '/autoload_namespaces.php';
  14. foreach ($map as $namespace => $path) {
  15. $loader->add($namespace, $path);
  16. }
  17. $classMap = require $composerDir . '/autoload_classmap.php';
  18. if ($classMap) {
  19. $loader->addClassMap($classMap);
  20. }
  21. spl_autoload_register(array('ComposerAutoloaderInitTargetDir', 'autoload'));
  22. $loader->register();
  23. return $loader;
  24. }
  25. public static function autoload($class)
  26. {
  27. $dir = dirname(__DIR__) . '/';
  28. $prefixes = array('Main\\Foo', 'Main\\Bar');
  29. foreach ($prefixes as $prefix) {
  30. if (0 !== strpos($class, $prefix)) {
  31. continue;
  32. }
  33. $path = $dir . implode('/', array_slice(explode('\\', $class), 2)).'.php';
  34. if (!$path = stream_resolve_include_path($path)) {
  35. return false;
  36. }
  37. require $path;
  38. return true;
  39. }
  40. }
  41. }
  42. }
  43. return ComposerAutoloaderInitTargetDir::getLoader();