Bonjour,

Je ne suis pas sûr d'avoir bien compris ici :
http://g-rossolini.developpez.com/tu...epts#LVI-A-2-b

Puis-je résumé pour faire simple :
"Lorsque l'on a plusieurs autoloads dans un même code,
on est obligé de mettre ces spl_autoload_register."

Je ne comprends pas non plus pourquoi il a mis
$object = new My_Special_Class();
avant les autoloads.

Habituellement, il me semble que l'on encode la création
des objets après l'appel des classes.

NB : Enlevez les commentaires pour savoir ce qu'il se passe pendant l'exécution du script.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<?php
spl_autoload_register('basic_autoload');
spl_autoload_register('dotted_autoload');
spl_autoload_register('pear_autoload');
 
$object = new My_Special_Class();
 
function basic_autoload($class)
{
    $file = $class.'.php';
    if(file_exists($file))
    {
        require_once $file;
    }
    //echo $file.'<br/>';
}
 
function dotted_autoload($class)
{
    $file = str_replace('_', '.', $class).'.php';
    if(file_exists($file))
    {
        require_once $file;
    }
    //echo $file.'<br/>';
}
 
function pear_autoload($class)
{
    $file = str_replace('_', '/', $class).'.php';
    if(file_exists($file))
    {
        require_once $file;
    }
    //echo $file.'<br/>';
}