projet-php/autoloader.php

26 lines
773 B
PHP
Executable File

<?php
/*
* fonction d'autoloading : prend en paramètre le nom de la classe et s'occupe d'inclure les fichiers correspondant aux classes
*/
function autoloader($class) {
//si on charge le StaticRepo
if(strpos($class, 'StaticRepo') !== FALSE){
require_once dirname(__FILE__).DIRECTORY_SEPARATOR.'repositories'.DIRECTORY_SEPARATOR.$class . '.php';
}
//si on charge un Repo
elseif(strpos($class, 'Repo') !== FALSE){
require_once dirname(__FILE__).DIRECTORY_SEPARATOR.'repositories'.DIRECTORY_SEPARATOR.'repos'.DIRECTORY_SEPARATOR.$class . '.php';
//cas particuliers pas identifiable par nom de classe
}
}
//enregistrememnt de la fonction tout en bas de la pile pour ne pas casser l'autoloader de phpUnit
spl_autoload_register('autoloader',false,true);
?>