// Fix autoload for classes with several implements

This commit is contained in:
rMalie
2011-12-02 14:34:48 +00:00
parent 2a7c5c4d9d
commit 88dc41cc7f
+2 -2
View File
@@ -160,8 +160,8 @@ class Autoload
else if (substr($file, -4) == '.php') else if (substr($file, -4) == '.php')
{ {
$content = file_get_contents($this->root_dir.$path.$file); $content = file_get_contents($this->root_dir.$path.$file);
$pattern = '#\W((abstract\s+)?class|interface)\s+(?P<classname>'.basename($file, '.php') $pattern = '#\W((abstract\s+)?class|interface)\s+(?P<classname>'.basename($file, '.php').'(Core)?)'
.'(Core)?)(\s+(extends|implements)\s+[a-z][a-z0-9_]*)?\s*\{#i'; .'(\s+extends\s+[a-z][a-z0-9_]*)?(\s+implements\s+[a-z][a-z0-9_]*(\s*,\s*[a-z][a-z0-9_]*)*)?\s*\{#i';
if (preg_match($pattern, $content, $m)) if (preg_match($pattern, $content, $m))
{ {
$classes[$m['classname']] = $path.$file; $classes[$m['classname']] = $path.$file;