Allgemeine schriftliche Testfragen und Antworten zum ThinkPHP-Framework-Interview

coldplay.xixi
Freigeben: 2020-08-10 17:09:33
nach vorne
5273 Leute haben es durchsucht

Allgemeine schriftliche Testfragen und Antworten zum ThinkPHP-Framework-Interview

1. Wie versteht man die Einzeleintragsdatei in ThinkPHP?

ThinkPHP verwendet einen Einzeleingabemodus für die Projektbereitstellung und den Zugriff. Unabhängig davon, welches Projekt Sie durchführen, ist diese Datei der Ausgangspunkt des Projekts. Sie können andere Vorgänge ausführen.

Im Allgemeinen besteht die Eintragsdatei aus drei Teilen:

Erforderlich:

1. Laden Sie die Framework-Eintragsdatei.

Optional:

2. Definieren Sie den Framework-Pfad, den Projektpfad und den Projektnamen.

3. Definieren Sie zugehörige Konstanten für den Debugging-Modus und den Laufmodus

Verwandte Themenempfehlungen: 2020 Thinkphp-Interviewfragen und -antworten (vollständige Sammlung)

2. Was ist die MVC-Schichtung in ThinkPHP?

MVC-Designidee ist ein abstraktes Konzept Der Kern besteht darin, die Logikschicht und die Ansichtsschicht der Anwendung zu trennen.

Die Verwendung von MVC in ThinkPHP spiegelt sich grob wider in:

Modell (M): Modelldatenverarbeitungsklasse;

Controller (C): Anwendungscontroller (Kerncontroller-App-Klasse) und Aktionscontroller sind beide verantwortlich Der Controller besteht darin, dass der Aktionscontroller die Geschäftssteuerung und der Anwendungscontroller die Planungssteuerung abschließt.

Ansicht (V): besteht aus der Ansichtsklasse und der Ansichtsvorlagendatei.

In ThinkPHP ist es nicht von M oder V abhängig, was bedeutet, dass es ohne Modell oder Ansicht funktionieren kann. Es ist nicht einmal auf C angewiesen. Dies liegt daran, dass ThinkPHP zusätzlich zu Action auch über einen Master-Controller verfügt, den App-Controller, der für die Gesamtplanung der Anwendung verantwortlich ist. Fehlt C, muss View V vorhanden sein, andernfalls handelt es sich nicht mehr um eine vollständige Anwendung.

3. Wie man die ThinkPHP-Architektur versteht (Kern + Verhalten + Treiber (CBD))

Kern: ThinkPHP-Kerncode, MVC-Architektur usw.;

Verhalten: einige Methoden, die mit dem ThinkPHP-Framework geliefert werden, andere reserviert Erweiterungsort usw.;

Treiber: ThinkPHP hat Datenbanktreiber, Cache-Treiber, Tag-Bibliothekstreiber, Template-Engine-Treiber usw. sowie einige externe Erweiterungen während des Entwicklungsprozesses erstellt, die Sie direkt verwenden können ist einfach und effizient.

4. Wie ThinkPHP SQL-Injection verhindert

Beim Entwurf der ThinkPHP-Architektur wurden einige Vorgänge durchgeführt, um SQL-Injection zu verhindern.

Die wichtigsten Dinge, die Sie beachten sollten, sind:

Wenn Sie Array für SQL-Operationen verwenden können, verwenden Sie Array

Wenn Sie SQL-Anweisungen für die Operation verwenden müssen, sagen Sie den vom Benutzer eingegebenen Inhalt voraus, z. B. numerische Typerzwingung, SQL-Schlüsselwort prüfen, regulärer Ausdrucksabgleich usw.

5. Wie aktiviere ich den Debugging-Modus? Welche Vorteile bietet der Debug-Modus?

Um den Debugging-Modus zu aktivieren, müssen Sie der Eintragsdatei lediglich eine Zeile mit einer Konstantendefinitionsanweisung hinzufügen, bevor Sie die Framework-Eintragsdateianweisung laden.

define("APP_DEBUG",true);

Nach dem Aktivieren des Debugging-Modus , das System schaltet automatisch den folgenden Inhalt ein:

Betriebsprotokolle, SQL-Protokolle und andere Protokolle, alle Fehler werden detailliert aufgezeichnet, um das Debuggen zu erleichtern;

Deaktivieren Sie das Zwischenspeichern von Vorlagendateien. Änderungen an Vorlagen werden sofort wirksam Deaktivieren Sie das Feld-Caching. Datenbankfeldänderungen werden vom Cache nicht beeinflusst.

Prüfen Sie die Datei-Groß-/Kleinschreibung usw.

Der Debug-Modus ist ein praktisches Tool für Entwicklung, Debugging, Demonstration usw., bevor das Projekt online geht.

6. Welche Konfigurationsmodi werden in ThinkPHP unterstützt? Was sind die Prioritäten?

ThinkPHP hat einen eigenen hierarchischen Konfigurationsmodus in Bezug auf die Projektkonfiguration erstellt. Die Prioritätsreihenfolge von rechts nach links ist:

Konventionelle Konfiguration->Projektkonfiguration->Debug-Konfiguration->Gruppenkonfiguration-> Konfiguration->Dynamische Konfiguration

7. Welche URL-Modi unterstützt ThinkPHP?

ThinkPHP unterstützt 4 URL-Modi, die über den Parameter URL_MODEL konfiguriert und geändert werden können. Der Standardwert ist PATHINFO-Modus. Die Konfigurationswerte 0, 1, 2 und 3 sind: Normalmodus, PATHINFO-Modus und Kompatibilitätsmodus

8, Was sind die Systemvariablen in ThinkPHP? Wie erhalte ich Systemvariablen?

Zu den häufig verwendeten Systemvariablen in ThinkPHP gehören: server, session, cookie, get, post, request

Die Ausgabe von Systemvariablen muss $Think als Präfix verwenden, wie zum Beispiel:

$Think.server.php_self = $_SESSION[ 'php_self']

9. Der Unterschied zwischen der M-Methode und der D-Methode in ThinkPHP (Hochfrequenzproblem)

M- und D-Methoden werden häufig in ThinkPHP verwendet, um Datenmodellklassen zu instanziieren Methode instanziiert Daten direkt. Die D-Methode prüft, ob eine geerbte Modellklasse vorhanden ist. Wenn nicht, ist die Funktion dieselbe wie die M-Methode.

Verwandte Lernempfehlungen:

thinkphp

Das obige ist der detaillierte Inhalt vonAllgemeine schriftliche Testfragen und Antworten zum ThinkPHP-Framework-Interview. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:chinacion
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!