2013-03-27 1 views
1
public function _remap($method) 
{ 
    if ($method == 'some_method') 
    { 
     $this->$method(); 
    } 
    else 
    { 
     $this->default_method(); 
    } 
} 

Voici ce que j'ai lu sur le site officiel. Comme je comprends la méthode _remap est appelée avant toutes les actions. Mais cette instruction $this->$method(); signifie que l'appel de la méthode $ appellera _remap à nouveau et que cela ressemble à un cycle. N'est-ce pas?Codeigniter 2: malentendu méthode with_remap dans les contrôleurs

Répondre

1

Non, _remap est appelé par le cadre, au cours de la init, mais lorsque vous appelez une méthode directement, vous exécutez uniquement le contenu de la fonction ...

Espérez il est utile!

Quelques explications trouvées here:

Important: If your controller contains a function named _remap(), it will always get called regardless of what your URI contains. It overrides the normal behavior in which the URI determines which function is called, allowing you to define your own function routing rules. 
Questions connexes