Heim  >  Artikel  >  Backend-Entwicklung  >  Die umfassendste Zusammenfassung der PHP-Interviewfragen und -antworten im Jahr 2017

Die umfassendste Zusammenfassung der PHP-Interviewfragen und -antworten im Jahr 2017

黄舟
黄舟Original
2018-05-14 14:14:3415577Durchsuche

In letzter Zeit habe ich viele Freunde im Internet gefragt, wie man mit PHP-Interviews umgeht. Für Freunde mit Berufserfahrung und praktischen Projekten ist das kein Problem, aber für Freunde, die gerade PHP gelernt haben, ist PHP-Interview sehr wichtig Schritt, daher gibt Ihnen die chinesische PHP-Website heute eine Zusammenfassung der Fragen zu PHP-Interviews. Viele davon werden von vielen Programmierern in Interviews gestellt! Ich hoffe, es hilft Ihnen! Vorteil ist plattformübergreifend. Was ist plattformübergreifend?

Die optimale Kombination der PHP-Betriebsumgebung ist Apache+MySQL+PHP. Diese Betriebsumgebung kann auf verschiedenen Betriebssystemen (wie Windows, Linux usw.) konfiguriert werden unterliegt keiner Manipulation Systembeschränkungen, daher wird es als plattformübergreifend bezeichnet

2. Erzählen Sie mir von den Web-Frontend-Technologien, die Sie beherrschen?

Beherrscht DIV+CSS-Webseitenlayout, JavaScript, jQuery-Framework, Photoshop-Bildverarbeitung

3. Programm Mittlerweile wird die dreischichtige MVC-Struktur im Internet häufig verwendet. Auf welche drei Schichten bezieht sich MVC und welche Vorteile hat sie?

Die drei Schichten von MVC beziehen sich auf: Geschäftsmodell, Ansicht und Controller. Die Controller-Schicht ruft das Modell auf, um die Daten zu verarbeiten, und ordnet die Daten dann zu Für die Anzeige auf der Ansichtsebene ergeben sich folgende Vorteile: ① Es kann eine Wiederverwendbarkeit des Codes erreicht und Coderedundanz vermieden werden. ② Der Implementierungscode von M und V ist getrennt, sodass dasselbe Programm unterschiedliche Ausdrücke verwenden kann 🎜>

4. Verständnis des JSON-Datenformats?


JSON (JavaScript Object Notation) ist ein leichtes Datenaustauschformat. Das JSON-Datenformat ist fest und kann auf vielfältige Weise verwendet werden Es gibt verschiedene Möglichkeiten, wie Sprache zum Übertragen von Daten verwendet wird.

Die Funktion in PHP, die das JSON-Format verarbeitet, ist json_decode(string $json [, bool $assoc]), die eine JSON-Formatzeichenfolge akzeptiert und in eine PHP-Variable konvertiert , Parameter json Ein String im JSON-String-Format, der dekodiert werden soll. assoc gibt ein Array anstelle eines Objekts zurück, wenn dieser Parameter TRUE ist.

Json_encode: PHP-Variablen in das JSON-Format konvertieren

5.

Ajax ist eine asynchrone Übertragungstechnologie, die über Javascript oder das JQuery-Framework implementiert werden kann, um eine teilweise Aktualisierung zu erreichen, wodurch der Druck auf den Server verringert und die Benutzererfahrung verbessert wird . Erfahrung

6. Wie kann bei der Entwicklung des Programms die Betriebseffizienz des Programms verbessert werden?

① Optimieren Sie SQL-Anweisungen. Versuchen Sie, select * nicht in Abfrageanweisungen zu verwenden. Verwenden Sie „which field“, um zu überprüfen, welches Feld weniger Unterabfragen verwendet, und verwenden Sie stattdessen Tabellenverbindungen. Verwenden Sie weniger Fuzzy-Abfragen.

②Erstellen Sie einen Index in der Datentabelle das Programm Cache für häufig verwendete Daten generieren

7. PHP Häufig verwendete Funktionen zur Verarbeitung von Arrays? (Konzentrieren Sie sich auf die „Parameter“ und den „Rückgabewert“ der Funktion)

①array() erstellt ein Array ②count() Gibt die Anzahl der Elemente im Array zurück;
③array_push() fügt ein oder mehrere Elemente am Ende des Arrays ein (push); >
④array_column () Gibt den Wert einer einzelnen Spalte im Eingabearray zurück;

array_combine() Erstellt ein neues Array durch Zusammenführen zweier Arrays;

array_reverse

() gibt das Array in umgekehrter Reihenfolge zurück;

⑦array_unique() entfernt doppelte Werte in das Array;

⑧in_array() prüft, ob der angegebene Wert im Array vorhanden ist

8.

①trim() entfernt Leerzeichen und andere Zeichen auf beiden Seiten der Zeichenfolge;

substr_replace() Teil der Zeichenfolge durch eine andere ersetzen;

③substr_count() Zählt, wie oft eine Teilzeichenfolge in der Zeichenfolge vorkommt; >④substr() gibt einen Teil der Zeichenfolge zurück;

⑤strtolower() wandelt die Zeichenfolge in Kleinbuchstaben um;

⑥strtoupper() Konvertiert den string in Großbuchstaben;

⑦strtr() konvertiert bestimmte Zeichen in der Zeichenfolge;

⑧strrchr() findet die Zeichenfolge in Das letzte Vorkommen von ein String in einem anderen String;

⑨strstr() findet das erste Vorkommen eines Strings in einem anderen String (Groß-/Kleinschreibung beachten); strlen() gibt die Länge von zurück der String; str_replace() ersetzt einige Zeichen im String (Groß- und Kleinschreibung beachten); print() gibt einen oder mehrere Strings aus; is_string() erkennt, ob die Variable ein String ist; entfernt HTML-Tags aus einer Zeichenfolge; mb_substr() ist eine Funktion zum Ausschneiden von Chinesisch und Englisch

Kapitel Teil 2: Datenbankteil von PHP-Interviewfragen

1. Was sind die gängigen

relationalen Datenbank-

Managementsystemprodukte? Antwort: Oracle, SQL Server, MySQL, Sybase, DB2, Access usw.

2. Was ist eine Transaktion? und seine Eigenschaften?

Antwort: Transaktion: Es handelt sich um eine Reihe von Datenbankoperationen und ist die grundlegende logische Einheit der Datenbankanwendung.

Transaktionsmerkmale: (1) Atomarität: Das heißt, Unteilbarkeit, Transaktionen werden entweder alle oder gar nicht ausgeführt.

(2) Konsistenz oder Stringability. Die Ausführung einer Transaktion wandelt die Datenbank von einem korrekten Zustand in einen anderen korrekten Zustand um

(3) Isolation. Bevor die Transaktion ordnungsgemäß festgeschrieben wird, dürfen Änderungen der Daten durch die Transaktion keiner anderen Transaktion zur Verfügung gestellt werden,

(4) Persistenz. Nachdem eine Transaktion korrekt übermittelt wurde, werden ihre Ergebnisse dauerhaft in der Datenbank gespeichert. Auch wenn nach der Übermittlung der Transaktion weitere Fehler auftreten, werden die Verarbeitungsergebnisse der Transaktion gespeichert.

Oder verstehen Sie es so:

Eine Transaktion ist eine Gruppe von SQL-Anweisungen, die als logische Arbeitseinheit miteinander verbunden sind. Wenn eine Anweisungsoperation fehlschlägt, schlägt die gesamte Operation fehl Nachfolgende Vorgänge werden auf den Zustand vor dem Vorgang zurückgesetzt, oder es befindet sich ein Knoten darauf. Um sicherzustellen, dass etwas entweder ausgeführt oder nicht ausgeführt wird, können Transaktionen verwendet werden. Um eine gruppierte Anweisung als Transaktion zu betrachten, muss sie ACID-Tests bestehen, nämlich Atomizität, Konsistenz, Isolation und Haltbarkeit

3 Was ist der Unterschied zwischen char und varchar?

Antwort: Es handelt sich um einen Typ mit fester Länge, während Varchar ein Typ mit variabler Länge ist. Der Unterschied zwischen ihnen ist: In einer Datenspalte vom Typ char(M) belegt jeder Wert M Bytes. Wenn eine Länge kleiner als M ist, füllt MySQL sie rechts mit Leerzeichen auf. (Auffüllzeichen werden während des Suchvorgangs entfernt.) In einer Datenspalte vom Typ varchar(M) nimmt jeder Wert gerade genug Bytes plus ein Byte ein, um seine Länge aufzuzeichnen ( Das heißt, die Gesamtlänge beträgt L+1 Bytes ).

4. MySQL-Speicher-Engine, der Unterschied zwischen Myisam und Innodb.


Antwort: Einfacher Ausdruck: MyISAM ist eine nicht-transaktionale Speicher-Engine, die für häufige Anwendungen geeignet ist Verwenden Sie eine Abfrageanwendung; kein Deadlock; geeignet für kleine Datenmengen, geringe Parallelität.

Innodb ist eine Speicher-Engine, die bei ordnungsgemäßer Gestaltung Transaktionen mit vielen Einfüge- und Aktualisierungsvorgängen unterstützt Der Unterschied liegt in der Sperrstufe. Geeignet für große Datenmengen und große Parallelität.

5. Welche Datentabellentypen gibt es?

Antwort: MyISAM, InnoDB , HEAP, BOB, ARCHIV, CSV usw. MyISAM: Ausgereift, stabil, einfach zu verwalten, schnell zu lesen. Einige Funktionen (Transaktionen usw.) unterstützen keine Sperren auf Tabellenebene.

InnoDB: Unterstützt Transaktionen, Fremdschlüssel und andere Funktionen sowie das Sperren von Datenzeilen. Es nimmt viel Platz ein und unterstützt keine Volltextindizierung usw.

Teil 3: Objektorientierte PHP-Interviewfragen

1. Was ist objektorientiert? 🎜>

Antwort: Objektorientiertes OO = Objektorientierte Analyse OOA + Objektorientiertes Design OOD + Objektorientierte Programmierung OOP ; Die populäre Erklärung ist, dass „alles ein Objekt“ ist und alle Dinge als unabhängige Objekte (Einheiten) betrachtet werden, die ihre eigenen Funktionen erfüllen können, anstatt wie C in Funktionen unterteilt zu werden.

Die aktuellen reinen OO-Sprachen sind hauptsächlich Java und C#. PHP und C++ unterstützen auch OO.

2. Beschreiben Sie kurz die Zugriffsrechte privater, geschützter und öffentlicher Modifikatoren.

Antwort: privat: privates Mitglied, auf das nur innerhalb der Klasse zugegriffen werden kann.

protected: geschützte Mitglieder, zugänglich innerhalb der Klasse und geerbter Klassen.

Öffentlich: Öffentliche Mitglieder, vollständig öffentlich, keine Zugriffsbeschränkungen.

3. Was ist der Unterschied zwischen Heap und Stack?

Antwort: Der Stapel ist ein Speicherplatz, der während der Kompilierung zugewiesen wird. Daher muss die Größe des Stapels in Ihrem Code klar definiert sein.

Der Heap ist der Speicherort des Programms Läuft Während des dynamisch zugewiesenen Speicherplatzes können Sie die Größe des zuzuweisenden Heap-Speichers basierend auf dem Ausführungsstatus des Programms bestimmen.

4. Was sind die Merkmale von objektorientiert?

Antwort: Hauptsächlich Kapselung, Vererbung und Polymorphismus. Wenn es 4 Aspekte sind, fügen Sie hinzu: Abstraktion.

5. Was ist ein Konstruktor, was ist ein Destruktor und welche Funktion hat er?

Antwort: Der Konstruktor (Methode) ist die erste Methode, die vom Objekt automatisch aufgerufen wird, nachdem das Objekt erstellt wurde. Sie existiert in jeder deklarierten Klasse und ist eine spezielle

Mitgliedsmethode. Seine Funktion besteht darin, einige Initialisierungsaufgaben auszuführen. In PHP wird Konstrukt() verwendet, um eine Konstruktormethode zu deklarieren, und es kann nur eine deklariert werden.

Der Destruktor (Methode) ist genau das Gegenteil des Konstruktors. Er ist die letzte Methode, die vom Objekt automatisch aufgerufen wird, bevor es zerstört wird. Dabei handelt es sich um einen neu in PHP5 hinzugefügten Inhalt, der dazu dient, bestimmte Vorgänge auszuführen, bevor ein Objekt zerstört wird, wie etwa das Schließen von Dateien und das Freigeben von Speicher.

Zusammenfassung:

PHP-Interviewfragen sind für jedes Unternehmen unterschiedlich. Hier stellen wir einige davon vor. Wir haben sie ausführlicher zusammengefasst Häufig anzutreffende PHP-Interviewfragen, aber Sie können sich auch anhand der von uns zusammengefassten PHP-Interviewfragen erweitern und erweitern!

Verwandte Empfehlungen:

1. Rekrutierungssaison 2017: Super Zusammenfassung der PHP-Interviewfragen!

2.

11 am häufigsten gestellte PHP-Interviewfragen

3.

Teilen von PHP-Interviewfragen

Das obige ist der detaillierte Inhalt vonDie umfassendste Zusammenfassung der PHP-Interviewfragen und -antworten im Jahr 2017. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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