/ / Codeigniter verbinden mehrere Controller - PHP, Codeigniter, Controller

Codeigniter verbinden mehrere Controller - PHP, Codeigniter, Controller

Ich bin auf der Suche nach der besten Methode / Lösung, um die Funktionen des Controllers in mehreren Controllern zu verwenden - mehrere Anwendungen in einer Administrationsoberfläche.

Mit anderen Worten: Eine Unterseite (Benutzer), die ich in 3 Unterseiten verwenden muss:

Controller:

  • eshop-settings.php
  • web-settings.php
  • another-settings.php

Alle Steuerungen haben eigene Funktionen und Schnittstellen.

admin -> controller -> eshop-settings.php enthält Unterseiten / Funktionen:

  • transport: / admin / eshop-einstellungen / transport /
  • preise: / admin / eshop-einstellungen / preise /
  • Benutzer: / admin / eshop-settings / users / (tab. Alle Nutzer, tab. Benutzerrechte)
  • user_edit

admin -> controller -> web-settings.php enthält unterseiten / funktionen:

  • Seiten: / admin / web-settings / pages /
  • Gruppen: / admin / web-settings / groups /
  • Benutzer: / admin / web-settings / users / (tab. Alle Nutzer, tab. Benutzersitzungen)
  • users_edit

...etc.

Alle Controller haben Unterseite "Benutzer"aber nicht alle Funktionen (zB Tab. All-User) und"user_edit",

Ist es möglich, Controller zu verbinden oder einen anderen Controller in Codeigniter hinzuzufügen?

Oder ich muss "Benutzer" -Funktionen erstellen und sie gegenseitig als Controller und als Hes-Schnittstelle aufrufen.

Vielen Dank

Antworten:

0 für die Antwort № 1

Controller sollten nur Dienste aufrufen und Daten an diese Dienste übergeben, Daten zurückerhalten und zur Ansicht senden. Vielleicht fangen Ausnahmen auch.

Nehmen Sie Ihre Geschäftslogik aus Ihren Controllern heraus und erstellen Sie eine Serviceklasse für die gemeinsam genutzte Funktionalität.

Dann könnten Sie Folgendes tun:

$svc = new UserService($dbConnection);
$user = $svc->getUserByEmail("coder@work.com");