Auto Loading in PHP

Ziel: Erfahren Sie, wie Sie jede Instanz einer Klasse verwenden können, ohne die Klassendatei einzuschließen. Wenn wir die Instanz einer Klasse verwenden möchten, müssen wir zuerst die Klassendatei durch eine der 4-Funktionen einschließen:

  1. einschließen
  2. include_once
  3. erfordern
  4. einmalig benötigt

Wie unten,

// inklusive alle Klassen erfordern "classes / Testing1.php"; erfordern "classes / Testing2.php"; // benutze jetzt die Funktionalität der Klasse $ testing1 = new Testing1; echo $ testing1-> a; $ testing2 = new Testing2; echo $ testing2-> a;

Wenn es jedoch viele Klassen gibt, die wir verwenden möchten, müssen wir alle Dateien einschließen, um die Instanz der Klasse erstellen zu können. Angenommen, es gibt Hunderte von Klassen, dann müssen wir alle einbeziehen und es wird viel Zeit und Raum in Anspruch nehmen. Um dies zu überwinden, können wir den folgenden Code verwenden:

Funktion auto_loader ($ class) {$ file = "classes / {$ class} .php"; // Pfad aller Klassen // Hiermit wird geprüft, ob die Datei existiert if (is_file ($ file)) {// Wenn die Datei existiert, enthält sie die Datei include $ file; }} // Um ​​auto_loader () zu registrieren, um diese Funktion nacheinander aufzurufen, wenn eine neue Klasse als spl_autoload_register ("auto_loader") deklariert wird; // benutze jetzt die Funktionalität der Klasse $ testing1 = new Testing1; echo $ testing1-> a; $ testing2 = new Testing2; echo $ testing2-> a;

Unter Verwendung des obigen Codes wird die erforderliche Klasse automatisch eingeschlossen, während die Klasse verwendet wird. Andere Klassen, die nicht erforderlich sind, werden nicht berücksichtigt. Dateistruktur:

index.php Klassen / Testing1.php Klassen / Testing2.php


Akash Roshan

Akash is a PHP developer and wants to share his knowledge through Blogs. He is currently growing in the IT industry while fulfilling his own goals.

Leave a Reply

Your email address will not be published. Required fields are marked *