Преглед изворни кода

Access plugins by class name, not file name

Class name and file name can differ regarding case sensitivity
Daniel Rudolf пре 9 година
родитељ
комит
a83b01ef4f
1 измењених фајлова са 5 додато и 1 уклоњено
  1. 5 1
      lib/Pico.php

+ 5 - 1
lib/Pico.php

@@ -243,7 +243,11 @@ class Pico
 
             $className = preg_replace('/^[0-9]+-/', '', basename($pluginFile, '.php'));
             if (class_exists($className)) {
-                $this->plugins[$className] = new $className($this);
+                // class name and file name can differ regarding case sensitivity
+                $plugin = new $className($this);
+                $className = get_class($plugin);
+
+                $this->plugins[$className] = $plugin;
             } else {
                 // TODO: breaks backward compatibility
                 //throw new RuntimeException("Unable to load plugin '".$className."'");