浏览代码

[Foundation] added a check to the Universal class loader

Fabien Potencier 15 年之前
父节点
当前提交
67964d0daa
共有 1 个文件被更改,包括 10 次插入2 次删除
  1. 10 2
      src/Symfony/Foundation/UniversalClassLoader.php

+ 10 - 2
src/Symfony/Foundation/UniversalClassLoader.php

@@ -124,7 +124,11 @@ class UniversalClassLoader
         if (0 === strpos($namespace, $ns))
         {
           $class = substr($class, $pos + 1);
-          require $dir.DIRECTORY_SEPARATOR.str_replace('\\', DIRECTORY_SEPARATOR, $namespace).DIRECTORY_SEPARATOR.str_replace('_', DIRECTORY_SEPARATOR, $class).'.php';
+          $file = $dir.DIRECTORY_SEPARATOR.str_replace('\\', DIRECTORY_SEPARATOR, $namespace).DIRECTORY_SEPARATOR.str_replace('_', DIRECTORY_SEPARATOR, $class).'.php';
+          if (file_exists($file))
+          {
+            require $file;
+          }
 
           return;
         }
@@ -137,7 +141,11 @@ class UniversalClassLoader
       {
         if (0 === strpos($class, $prefix))
         {
-          require $dir.DIRECTORY_SEPARATOR.str_replace('_', DIRECTORY_SEPARATOR, $class).'.php';
+          $file = $dir.DIRECTORY_SEPARATOR.str_replace('_', DIRECTORY_SEPARATOR, $class).'.php';
+          if (file_exists($file))
+          {
+            require $file;
+          }
 
           return;
         }