Heim > Artikel > Backend-Entwicklung > Probleme, die durch wiederholte Einführung in PHP entstehen
Lassen Sie mich zunächst ausführlich auf diese vier importierten Funktionen eingehen
include() und require( ) hat die gleiche Funktion wie
Der einzige Unterschied ist: require() wird vor der Ausführung vorab eingeführt, unabhängig davon, ob require( ) wird ausgeführt oder nicht, solange es existiert, include() Es wird nur eingeführt, wenn die Anweisung ausgeführt wird
include_once() und require_once() erkennen beide, ob die Datei importiert wurde, aber nicht importiert.
Der einzige Unterschied ist: require_once() ist eine bedingungslose Einbindung, die beendet wird, wenn danach ein Fehler auftritt wird eingeführt. include_once() wird es ignorieren und die Ausführung fortsetzen
In Bezug auf Effizienzprobleme: I möchte erklären, dass bitte bewusst weniger include_once(), require_once()
Prinzip dieser Funktion: Importieren Sie die Datei –> Vergleichen Sie die aktuelle Skriptanweisung, um zu sehen, ob sie enthalten ist –> Denken Sie an das gesamte Projekt mit Hunderten von Klassenbibliotheken. Was wären die schrecklichen Folgen, wenn Sie Dutzende Male in einer Ausführung vergleichen würden?
Ich habe einige Experten in ihren Blogs schreiben sehen, dass sie nicht auf diese kleinen Details achten müssen und der SQL-Optimierung mehr Aufmerksamkeit schenken sollten Programmierer sollten eine gute Gewohnheit zur Effizienzoptimierung beibehalten und auf jedes Detail achten
Schreiben Sie hier meine persönliche Lösung, um die wiederholte Einführung von Dateien in Bibliotheken mit mehreren Klassen zu verhindern:
1. Verwenden Sie require() im aufrufenden Skript;
2. Verhindern Sie die Wiederverwendung von class_exists('class name') oder include('absoluter Pfad zur Klassenbibliothek');
Erklärung: Die Datei, die das Skript aufruft, verwendet require() einmal, da das aufrufende Skript ein allgemeiner Einstiegspunkt für das Programm ist und die öffentliche Klassenbibliothek eingeführt wird Hier kommt es selten vor, dass die Klassenbibliothek public nicht verwendet wird. Die Verwendung der obigen Anweisung in der Klassenbibliothek kann verhindern, dass das aktuelle Skript die öffentliche Klasse wiederholt einführt Bibliothek, und solange es bestanden wird Die Einführung wird nur ausgeführt, wenn die Bedingungen beurteilt werden, und die Voreinführung wird nicht wiederholt, wodurch die Effizienz der Programmausführung verbessert wird
Das obige ist der detaillierte Inhalt vonProbleme, die durch wiederholte Einführung in PHP entstehen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!