Dans Laravel, l'inversion du contrôle IOC est un principe de conception en programmation orientée objet. Elle peut être utilisée pour réduire le couplage entre les codes informatiques. Cela signifie qu'une classe cède son contrôle à un autre objet. cet objet.
L'environnement d'exploitation de cet article : système Windows 10, Laravel version 6, ordinateur Dell G3.
L'inversion de contrôle (Inversion of Control, en abrégé IoC) est un principe de conception en programmation orientée objet qui peut être utilisé pour réduire le couplage entre les codes informatiques.
La méthode la plus courante est appelée Dependency Injection (DI), et l'autre méthode est appelée "Dependency Lookup". Par inversion de contrôle, lorsqu'un objet est créé, une entité externe qui contrôle tous les objets du système lui transmet la référence de l'objet dont elle dépend.
Pour faire simple, une classe cède son contrôle à un autre objet, et les dépendances entre classes sont résolues par cet objet. L'injection de dépendances est une déclaration explicite de dépendances, tandis que la recherche de dépendances résout les dépendances via la recherche.
Inversion de contrôle (IoC) : pas besoin de modifier le contenu vous-même, il est transmis en externe. Passage des dépendances internes aux dépendances externes.
Inversion de contrôle (IOC) : « Contrôle » est le contrôle du flux d'exécution du programme. « Inversion » signifie qu'avant d'utiliser le framework, le programmeur contrôle l'exécution de l'ensemble du programme. Après avoir utilisé le framework, les droits de contrôle sont. transféré du programme. Le membre est inversé dans le cadre.
Injecter une classe :
App::bind('foo', function($app) { return new FooBar; });
Cet exemple signifie créer une classe avec l'alias foo, et l'instanciation réelle de FooBar se fait lors de son utilisation.
La façon d'utiliser cette classe est la suivante :
$value = App::make('foo');
$value est en fait un objet FooBar.
Si vous souhaitez utiliser le mode singleton pour instancier une classe, alors utilisez :
App::singleton('foo', function() { return new FooBar; });
De cette façon, le même objet sera instancié à chaque fois.
【Recommandations associées : tutoriel vidéo laravel】
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!