Heim  >  Artikel  >  Backend-Entwicklung  >  Zusammenfassung der neuesten klassischen PHP-Interviewfragen (Teil 1)

Zusammenfassung der neuesten klassischen PHP-Interviewfragen (Teil 1)

黄舟
黄舟Original
2017-03-18 09:14:311324Durchsuche

Dieser Artikel stellt hauptsächlich die neueste Zusammenfassung der klassischen PHP-Interviewfragen im Jahr 2017 vor. Er ist sehr gut und hat Referenzwert.

1. Der Unterschied zwischen doppelten und einfachen Anführungszeichen

  • Doppelte Anführungszeichen interpretieren Variablen, einfache Anführungszeichen interpretieren Variablen nicht

  • In doppelten Anführungszeichen Fügen Sie einfache Anführungszeichen ein. Wenn in den einfachen Anführungszeichen eine Variable steht, muss die Variablenerklärung

  • in den doppelten Anführungszeichen stehen. Dem Variablennamen muss gefolgt werden eine Nicht-Zahl, ein Buchstabe oder ein Unterstrich. Sonderzeichen, oder verwenden Sie {}, um Variablen einzuschließen, andernfalls wird der Teil nach dem Variablennamen als Ganzes behandelt, was zu einem Grammatikfehler führt

  • Doppelte Anführungszeichen interpretieren Escape-Zeichen, einfache Anführungszeichen interpretieren keine Escape-Zeichen, aber die Interpretation von ' und \

  • kann dazu führen, dass einfache Anführungszeichen einfach verwendet werden Einfache Anführungszeichen sind effizienter als doppelte Anführungszeichen. Sie sollten hoch sein (da doppelte Anführungszeichen zuerst durchlaufen werden müssen, um festzustellen, ob sie Variablen enthalten, während einfache Anführungszeichen nicht beurteilt werden müssen). 🎜>

2. Häufig verwendete super globale Variablen(8)

  • $_GET ----->Übertragungsmethode abrufen

  • $POST ----->Übertragungsmethode posten

  • $ ANFRAGE ----->Kann sowohl Get- als auch Post-Methoden erhalten. Wert

  • ***

  • $GLOBALS ----- >Alle Variablen werden in

  • $FILE -----> hochgeladen. Dateien mit

  • $SERVER ----- hochladen. >Systemumgebungsvariablen

  • * **

  • $SESSION ----->Wird zur Sitzungssteuerung verwendet

  • $COOKIE - ---->

3. Der Unterschied zwischen den Methoden POST, GET, PUT und DELETE HTTP

HTTP definiert verschiedene Methoden zur Interaktion mit dem Server. Die grundlegendsten sind POST, GET, PUT und DELETE. Der vollständige Name der unverzichtbaren URL ist Verstehen Sie es so: URL-Beschreibung Eine Ressource im Internet wird abgerufen. Post, Get, Put und Delegate sind Vorgänge zum Hinzufügen, Löschen, Ändern und Überprüfen dieser Ressource!

3.1 Der Unterschied zwischen Get- und Post-Übermittlungsmethoden in der Form

  • get fügt die Parameterdatenwarteschlange zum hinzu Übermittlungsformular In der URL, auf die das Aktionsattribut verweist, entspricht der Wert eins zu eins jedem Feld im Formular, was aus der URL ersichtlich ist. Der Beitrag verwendet den HTTPPOST-Mechanismus, um jedes Feld im Formular und seinen Inhalt zu verhindern Von der Übertragung an das Aktionsattribut im HTML-Kopf kann der Benutzer diesen Vorgang nicht sehen.

  • Für die Get-Methode verwendet die Serverseite Request.QueryString zum Abrufen Für die Post-Methode verwendet die Serverseite Request.Form, um die übermittelten Daten abzurufen.

  • Get überträgt eine kleine Datenmenge, Post überträgt eine große Menge Daten und ist im Allgemeinen standardmäßig nicht eingeschränkt, aber theoretisch beträgt die maximale Menge in IIS4 80 KB. In IIS5 sind es 1000 KB,

  • Get-Sicherheit ist sehr niedrig, Post-Sicherheit ist hoch


3.2

4. Einführung in PHP

Hypertext-Präprozessor----Hypertext-Präprozessor

Persönlich Startseite Ursprünglicher Name

Zielzweck: Ermöglichen Sie Webentwicklern das schnelle Schreiben dynamisch generierter Webseiten. PHP bettet das Programm zur Ausführung in das

HTML-Dokument ein als CGI, das die HTML-Bearbeitung vollständig generiert

HTML: Hypertext Markup Language

Gründer: Rasmus Lerdorf, geboren 1968, University of Waterloo, Kanada

Ledov schrieb das Wartungsprogramm zunächst in Prel-Sprache, um seine persönliche Webseite zu pflegen, und schrieb es dann in C um, was schließlich zu PHP/Fi führte

Zeitleiste:

  • PHP/FI wurde am 08.06.1995 für die Öffentlichkeit freigegeben

  • 1995 php2.0 und fügte Unterstützung für MySQL

  • hinzu

    1997 php3.0

  • 2000 php4.0

  • 2008 php5.0

  • Da php6.0 die Unicode-Kodierung nicht vollständig löst, gibt es im Grunde keine Anwendung in der Produktionslinie. Es handelt sich im Grunde nur um ein Konzeptprodukt. Viele Funktionen wurden auf php5.3.3 und php5.3.4 implementiert 🎜>

    Gemeinsame IDEs (Integrierte Entwicklungsumgebung): Integrierte Entwicklungsumgebung
  • Coda (mac)
  • PHPStrom
Adobe Dreamweaver

NetBeans


Gemeinsamer Text
Editor

, mit Code-Hervorhebung:

NodePad++SublimeText



PHP-Vorteile

PHP-Funktionen:

PHP mischt auf einzigartige Weise C, Java, Prel und PHPs eigene Syntax

  • Kann dynamische Webseiten schneller ausführen als CGI oder Prel. PHP bettet Programme zur Ausführung in HTML-Dokumente ein und die Ausführungseffizienz ist höher als bei CGI, das die HTML-Bearbeitung vollständig generiert >

  • Unterstützt fast alle gängigen Datenbanken und Betriebssysteme


  • PHP kann C, C++ verwenden, um das Programm zu erweitern


  • PHP-Vorteile:

Offener Quellcode

  • Kostenlos

  • Schnelligkeit

  • Stark plattformübergreifend

  • Hohe Effizienz

  • Grafikverarbeitung

  • Objektorientiert
  • Beruflicher Fokus


  • PHP-Technologieanwendung:

Statische Seitengenerierung

  • Datenbank-Cache

  • Prozesscache

  • p+css

    w3c
  • Standard
  • Große Last

  • Verteilt

  • flex

  • Unterstützung

    MVC
  • Smarty Module Engine


  • PHP-Zertifizierungsstufe

Junior IFE: Index Front Engineer Front-End Engineer Intermediate IPE: Index PHP Engineer PHP Engineer Senior IAE: Index Architecture Engineer Architekturingenieur




6. echo, print_r, Der Unterschied zwischen print und var_dump

7.
* echo、print是php语句,var_dump和print_r是函数
* echo 输出一个或多个字符串,中间以逗号隔开,没有返回值是语言结构而不是真正的函数,因此不能作为表达式的一部分使用
* print也是php的一个关键字,有返回值 只能打印出简单类型变量的值(如int,string),如果字符串显示成功则返回true,否则返回false
* print_r 可以打印出复杂类型变量的值(如数组、对象)以列表的形式显示,并以array、object开头,但print_r输出布尔值和NULL的结果没有意义,因为都是打印"\n",因此var_dump()函数更适合调试
* var_dump() 判断一个变量的类型和长度,并输出变量的数值
HTTP-Statuscode

Klicken Sie hier, um die detaillierte Erklärung der HTTP-Statuscodes anzuzeigen Allgemeine HTTP-Statuscodes:

200 – Anfrage erfolgreich

301 – Ressourcen (Webseiten usw.) werden dauerhaft an andere URLs maskiert

404 – Die angeforderte Ressource (web Seite usw.) existiert nicht

505 – Interner Serverfehler

HTTP-Statuscode-Klassifizierung:

1** – Information, die vom Server empfangene Anfrage erfordert, dass der Anforderer die Ausführung des Vorgangs fortsetzt
2** – Erfolg, der Vorgang wurde erfolgreich empfangen und verarbeitet
3** – Weiterleitung, weitere Maßnahmen sind erforderlich, um die Anfrage abzuschließen

4** – Clientfehler, die Anfrage enthielt einen Syntaxfehler oder ist fehlgeschlagen Vervollständigen Sie die Anfrage

5** Serverfehler, der Server hat bei der Verarbeitung der Anfrage einen Fehler festgestellt





8. Was sind

Magie Anführungszeichen

Magische Anführungszeichen sind ein Prozess, der die in das PHP-Skript eingegebenen Daten automatisch maskiert. Es ist am besten, sie nicht beim Codieren zu maskieren, sondern nach Bedarf während der Laufzeit zu maskieren

9. So erhalten Sie die IP des Clients (erfordert ein int) und den Code der IP des Servers

Client: $_SERVER["REMOTE_ADDR"] ;oder getenv('REMOTE_ADDR')ip2long für die KonvertierungServerseite: gethostbyname('www.baidu.com')



10

cvs, svn, vss, git

11. Methoden zur Datenbankoptimierung

MySQL-DatenbankAcht Möglichkeiten zur Optimierung (klassisches Muss) Klicken Sie hier, um zu gelangen

Wählen Sie die am besten anwendbaren Feldattribute aus, reduzieren Sie die Definition der Feldbreite so weit wie möglich, und versuchen Sie, Felder auf NOTNULL zu setzen. Beispielsweise eignen sich „Provinz“ und „Geschlecht“ am besten für ENUM.Verwenden Sie Join (JOIN) anstelle einer Unterabfrage.Verwenden Sie Union (UNION) anstelle einer manuell erstellten temporären Tabelle.

Transaktionsverarbeitung

Tabelle sperren, Transaktionsverarbeitung optimieren
Fremdschlüssel anwenden, Sperrtabellen optimieren
Indizes erstellen
Abfrageanweisungen optimieren

12. Haben Sie jemals die Vorlagen-Engine verwendet? Wie heißt die verwendete Template-Engine?

Smarty: Smarty ist eine sehr alte PHP-Template-Engine. Sie war meine erste Wahl für die Verwendung von Templates in dieser Sprache. Obwohl es seltener aktualisiert wird und einige Funktionen der neuen Generation von Template-Engines fehlen, ist es dennoch einen Blick wert.

13. Welche Methoden sollten zur Lösung des Verkehrsproblems verwendet werden?

Überprüfen Sie, ob die Serverhardware dies unterstützt den aktuellen Datenverkehr
Lesen und Schreiben der Datenbank trennen, Datentabellen optimieren
Funktionsregeln programmieren, externe Hotlinks verbieten
Download großer Dateien kontrollieren
Verwenden Sie verschiedene Hosts, um den Hauptverkehr umzuleiten

14. Was ist der Unterschied zwischen den Anweisungen include und require? Um zu vermeiden, dass dieselbe Datei mehrmals eingebunden wird, können Sie (?)-Anweisungen verwenden, um sie zu ersetzen.

require ist eine bedingungslose Einbindung, d. h. wenn require zu einem Prozess hinzugefügt wird, wird dies der Fall sein wird zuerst ausgeführt, unabhängig davon, ob die Bedingung wahr ist oder nicht. Wenn die Datei nicht existiert oder nicht geöffnet werden kann, wird ein Fehler angezeigt und die Programmausführung wird abgebrochen.

include hat einen Rückgabewert. aber require nicht (vielleicht ist require aus diesem Grund schneller als include), wenn es enthalten ist. Wenn die Datei nicht vorhanden ist, wird ein Fehler angezeigt, aber das Programm wird weiterhin ausgeführt

Hinweis: require ist schwerwiegend, wenn die include-Datei nicht existiert oder einen Syntaxfehler aufweist, aber include nicht

require_once die Einbindung nur einmal anzeigt und wiederholte Einbindung vermeidet

15. Sprechen Sie über das Verständnis von MVC

Durch Modelle, Ansichten und Controller abgeschlossene Anwendungen. Das Modell sendet die zu implementierenden Funktionen der Controller, und der Controller empfängt die Organisationsfunktionen und übergibt sie an die Ansicht

16. Erklären Sie den Unterschied zwischen der Wertübergabe und der Referenzübergabe in PHP und erklären Sie, wann die Referenzübergabe erfolgt bei der Wertübergabe?

Variablen werden standardmäßig immer nach Wert zugewiesen, d. h. wenn der Wert eines Ausdrucks einer Variablen zugewiesen wird, wird der Wert des gesamten Ausdrucks der Zielvariablen zugewiesen , was bedeutet Hinweis: Wenn eine Variable einer anderen Variablen zugewiesen wird, hat die Änderung des Werts einer Variablen keine Auswirkungen auf die andere Variable

php bietet auch eine andere Möglichkeit, Variablen Werte zuzuweisen: Referenzzuweisung. Dies bedeutet, dass die neue Variable einfach auf die ursprüngliche Variable verweist (mit anderen Worten, sie wird zu einem Alias ​​oder zeigt auf sie). Änderungen an neuen Variablen wirken sich auf die ursprünglichen Variablen aus und umgekehrt. Um die Referenzzuweisung zu verwenden, fügen Sie einfach ein &-Symbol vor der zuzuweisenden Variablen (Quellvariable) hinzu.

Das Objekt verwendet standardmäßig die Referenzübergabe

Für größere Daten ist es besser zur Referenzübergabe. Dies kann Speicheraufwand sparen

Das obige ist der detaillierte Inhalt vonZusammenfassung der neuesten klassischen PHP-Interviewfragen (Teil 1). 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