From 08a47626bc38ce85d8aeef43e0f6ee9fe17b99d7 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Sat, 2 Jan 2016 19:50:00 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E8=87=AA=E5=8A=A8=E5=8A=A0?= =?UTF-8?q?=E8=BD=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- library/think/loader.php | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/library/think/loader.php b/library/think/loader.php index 734fe603..cc0cfa80 100644 --- a/library/think/loader.php +++ b/library/think/loader.php @@ -36,23 +36,24 @@ class Loader include $file; } else { // 命名空间自动加载 - $name = strtolower(strstr($class, '\\', true)); + $name = strtolower(strstr($class, '\\', true)); + $class = substr($class, strlen($name) + 1); if (isset(self::$namespace[$name])) { // 注册的命名空间 $path = self::$namespace[$name]; } elseif (in_array($name, ['think', 'behavior', 'traits']) || is_dir(LIB_PATH . $name)) { // 核心类库命名空间 - $path = LIB_PATH . $name; + $path = LIB_PATH . $name . DS; } elseif (APP_NAMESPACE == $name) { // 项目命名空间 $path = APP_PATH; } elseif (is_dir(EXTEND_PATH . $name)) { // 扩展类库命名空间 - $path = EXTEND_PATH . $name; + $path = EXTEND_PATH . $name . DS; } else { return; } - $filename = $path . str_replace('\\', DS, str_replace('\\_', '\\', strtolower(trim(preg_replace("/[A-Z]/", "_\\0", strstr($class, '\\')), "_")))) . EXT; + $filename = $path . str_replace('\\', DS, str_replace('\\_', '\\', strtolower(trim(preg_replace("/[A-Z]/", "_\\0", $class), "_")))) . EXT; if (is_file($filename)) { include $filename; }