Bonsoir,
J'aimerais mettre en oeuvre la fonction __autoload() que je viens de découvrir (je débute en PHP objet) pour charger mes classes, mais je me confronte à un petit problème. Voilà comment j'ai procédé.
J'ai mis ma fonction __autoload() dans un fichier "autoloading.php" que j'inclus dans toutes mes autres pages de la manière suivante
Code :
- require_once('autoloading.php');
|
l'ennui c'est que lorsque ma fonction __autoload() s'execute, le chemin pour chercher les classes peut varier (car les fichiers qui l'appellent ne se trouvent pas forcément dans le même répertoire), j'ai donc procédé comme ceci
code de mon autoloading.php
Code :
- <?php
- function __autoload($class_name)
- {
- if(require_once('class/'.$class_name.'.php'))
- {
- }
- else
- require_once('../class/'.$class_name.'.php');
- }
- ?>
|
Et ça marche, par contre je ne sais pas si c'est très propre. Qu'en pensez-vous ? Il y aurait-t-il une meilleure syntaxe (ou façon de faire) ?