Ceci est ma fonction simple d’autoload de class pour wordpress.
Au passage, cette version est une fonction anonyme. Ce procédé est possible uniquement à partir de la version 5.3 de php.
On par du postulat que j’utiilise un fichier par classe, que ceux-ci sont stockés dans un dossier dédié, « classes », et se nomment tous « class.<nom de la class>.php ».
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | /** * Autoload classes */ spl_autoload_register(function($class){ $classFile = dirname(__FILE__) . '/classes/class.' .$class . '.php'; try { // on vérifie si le fichier de la classe appelée existe if (file_exists($classFile)) include 'classes/class.' . $class . '.php'; } catch (Exception $e) { echo 'Classes non chargées : ' . $e->getMessage(); } }); $maClass = new MaClass; $maClass2 = new MaClass2; $maClass3 = new MaClass3; |
On peut ainsi instancier autant d’objet que l’on souhaite pour chaque classe référencée dans le dossier classes/ (si on utilise comme il se doit un fichier par classe).
Si vous pensez que cette classe peut êtrre optimisée, n’hésitez pas à poster un commentaire !