autoload_real_include_path.php 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. <?php
  2. // autoload_real.php @generated by Composer
  3. class ComposerAutoloaderInitIncludePath
  4. {
  5. private static $loader;
  6. public static function loadClassLoader($class)
  7. {
  8. if ('Composer\Autoload\ClassLoader' === $class) {
  9. require __DIR__ . '/ClassLoader.php';
  10. }
  11. }
  12. public static function getLoader()
  13. {
  14. if (null !== self::$loader) {
  15. return self::$loader;
  16. }
  17. spl_autoload_register(array('ComposerAutoloaderInitIncludePath', 'loadClassLoader'), true, true);
  18. self::$loader = $loader = new \Composer\Autoload\ClassLoader();
  19. spl_autoload_unregister(array('ComposerAutoloaderInitIncludePath', 'loadClassLoader'));
  20. $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
  21. if ($useStaticLoader) {
  22. require_once __DIR__ . '/autoload_static.php';
  23. call_user_func(\Composer\Autoload\ComposerStaticInitIncludePath::getInitializer($loader));
  24. } else {
  25. $map = require __DIR__ . '/autoload_namespaces.php';
  26. foreach ($map as $namespace => $path) {
  27. $loader->set($namespace, $path);
  28. }
  29. $map = require __DIR__ . '/autoload_psr4.php';
  30. foreach ($map as $namespace => $path) {
  31. $loader->setPsr4($namespace, $path);
  32. }
  33. $classMap = require __DIR__ . '/autoload_classmap.php';
  34. if ($classMap) {
  35. $loader->addClassMap($classMap);
  36. }
  37. }
  38. $loader->setUseIncludePath(true);
  39. spl_autoload_register(array('ComposerAutoloaderInitIncludePath', 'autoload'), true, true);
  40. $loader->register(true);
  41. return $loader;
  42. }
  43. public static function autoload($class)
  44. {
  45. $dir = dirname(dirname(__DIR__)) . '/';
  46. $prefixes = array('Main\\Foo', 'Main\\Bar');
  47. foreach ($prefixes as $prefix) {
  48. if (0 !== strpos($class, $prefix)) {
  49. continue;
  50. }
  51. $path = $dir . implode('/', array_slice(explode('\\', $class), 2)).'.php';
  52. if (!$path = stream_resolve_include_path($path)) {
  53. return false;
  54. }
  55. require $path;
  56. return true;
  57. }
  58. }
  59. }