Exemplo n.º 1
0
 public function testLoad()
 {
     $autoloader = new Autoloader();
     $autoloader->addPath('Foo', 'src/Cache');
     $autoloader->addPath('Foo', 'src/I18n');
     //     $autoloader->addPath('Foo\Selection', 'src/Models/Selection');
     $this->assertFalse($autoloader->load('Bar'));
     $this->assertFalse($autoloader->load('Foo\\Bar'));
     $this->assertTrue($autoloader->load('Foo\\I18n'));
     $this->assertTrue($autoloader->load('Foo\\Cache'));
     //     $this->assertTrue($autoloader->load('Foo\Selection\SelectionBuilder'));
     // TODO: mock loadFrom and test paths etc.
 }
Exemplo n.º 2
0
     * @return string the class path
     */
    private static function package($path, $class, $type)
    {
        if (substr($path, -1) != '/') {
            $path .= '/';
        }
        $tokens = array();
        $bits = preg_split('`([A-Z][a-z0-9]*)`', $class, null, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE);
        while ($bit = array_shift($bits)) {
            if (preg_match('`^[A-Z]$`', $bit)) {
                while (count($bits) && preg_match('`^[A-Z]$`', $bits[0])) {
                    $bit .= array_shift($bits);
                }
            }
            $tokens[] = $bit;
        }
        array_pop($tokens);
        // Exception
        while (count($tokens) && !file_exists(APPLICATION_BASE . '/classes/' . $path . implode('', $tokens) . $type . 's.class.php')) {
            array_pop($tokens);
        }
        return $path . (count($tokens) ? implode('', $tokens) : '') . $type . 's';
    }
}
/**
 * Register autoload
 */
spl_autoload_register(function ($class) {
    Autoloader::load($class);
});
Exemplo n.º 3
0
<?php

ini_set('display_errors', 1);
//On prépare le script à recevoir des objets JSON
header("Content-type : application/json ; charset=UTF-8", true);
//On autoload les classes en faisant appel à la classe autoload
require '../Autoloader.php';
Autoloader::load();
//On créer les objets des controllers
$authControl = new AuthController();
$questionControl = new QuestionnaireController();
$progControl = new ProgrammeController();
$userControl = new UserController();
$rituelControl = new RituelController();
$adminControl = new AdminController();
$habitsControl = new HabitsController();
//On recherche dans toutes les superglobales d'entête HTTP pour chercher l'information au bon endroit et rediriger le script vers la bonne méthode à appeler. Le champs action doit être renseigner pour demander une action de la part des scripts PHP.
//Get doit être utilisé que lorsque l'on souhaite récupérer des informations
if (isset($_GET['action'])) {
    switch ($_GET['action']) {
        //Permet d'obtenir toutes les informations nécessaire à un questionnaire (questions/réponses/profils de réponse). Champs requis : idProg (contient l'id BDD du programme dont on veut le questionnaire)
        case 'survey':
            echo $questionControl->showQuestions();
            break;
            //Permet de recevoir une liste de tout les programmes.
        //Permet de recevoir une liste de tout les programmes.
        case "programs":
            echo $progControl->showProg();
            break;
            //Permet de recevoir une ou plusieurs informations sur un profil utilisateur. Champs requis : accessToken, field (contient le ou les noms de champs dont on veux la valeur. Chaque nom doit être séparé par des virgules)
        //Permet de recevoir une ou plusieurs informations sur un profil utilisateur. Champs requis : accessToken, field (contient le ou les noms de champs dont on veux la valeur. Chaque nom doit être séparé par des virgules)
 function __autoload($class)
 {
     switch ($class) {
         default:
             Autoloader::load($class);
     }
 }
Exemplo n.º 5
0
function __autoload($class)
{
    $a = new Autoloader();
    return $a->load($class);
}