Heim  >  Artikel  >  Backend-Entwicklung  >  Muss PHP kompiliert werden?

Muss PHP kompiliert werden?

王林
王林Original
2019-09-16 17:53:117285Durchsuche

Muss PHP kompiliert werden?

Obwohl PHP eine interpretierte Sprache ist, muss sie noch kompiliert werden. Lassen Sie mich Ihnen vorstellen, welche kompilierten Sprachen und welche interpretierte Sprachen sind und welche Vor- und Nachteile sie haben.

Kompilierte Sprache:

1. Verwenden Sie einen speziellen Compiler (ähnlich Visual Studio unter Windows), um auf bestimmte Plattformen (Betriebssysteme) abzuzielen -Level-Sprachquellcode wird in Maschinencode (einschließlich Maschinenanweisungen und Operanden) „übersetzt“, der von der Hardware der Plattform gleichzeitig ausgeführt wird, und in ein von der Plattform erkanntes ausführbares Programmformat (.exe) gepackt. Diese Konvertierung wird aufgerufen Zusammenstellung. Das kompilierte ausführbare Programm kann von der Entwicklungsumgebung getrennt und unabhängig auf einer bestimmten Plattform ausgeführt werden. Nachdem einige Programme kompiliert wurden, müssen sie möglicherweise auch andere kompilierte Objektcodes verknüpfen, dh zwei oder mehr Objektcodemodule zusammenstellen, um das endgültige ausführbare Programm zu generieren. Auf diese Weise wird eine Wiederverwendung von Code auf niedriger Ebene erreicht.

2. Der Code der kompilierten Sprache wird einmal kompiliert und wiederholt verwendet. Mit anderen Worten: Die Vorgänger pflanzten Bäume und die Nachkommen genossen den Schatten.

3. C, C++, Objective-C usw. sind alle kompilierte Sprachen

Interpretierte Sprachen:

1. Im Programm Das Quellprogramm wird vor der Ausführung in eine Zwischensprache vorkompiliert, und dann wird die Zwischensprache vom Interpreter ausgeführt

2. Jedes Mal, wenn ein Programm in einer interpretierten Sprache ausgeführt wird, muss es einmal kompiliert werden Daher ist die Ausführungseffizienz interpretierter Sprachprogramme im Allgemeinen geringer und sie können nicht unabhängig vom Interpreter ausgeführt werden.

3. C#, PHP, Python, Java usw. sind alle interpretierte Sprachen.

Vorteile kompilierter Sprachen:

1. Einer der größten Vorteile kompilierter Sprachen ist ihre Ausführungsgeschwindigkeit. In C/C++ geschriebene Programme laufen 30–70 % schneller als dieselben in Java geschriebenen Programme.

2. Kompilierte Programme verbrauchen weniger Speicher als interpretierte Programme.

Nachteile:

1. Der Nachteil – der Compiler ist viel schwieriger zu schreiben als der Interpreter

2 Damals keine große Hilfe – Wie oft sind Sie in Ihrem C-Code auf eine „Nullzeiger-Ausnahme“ gestoßen und haben Stunden damit verbracht, herauszufinden, wo der Fehler im Code war.

3. Der ausführbare kompilierte Code ist viel größer als der gleiche interpretierte Code. Beispielsweise ist eine C/C++-EXE-Datei viel größer als eine Java-Class-Datei mit derselben Funktionalität.

4. Kompilierte Programme sind plattformspezifisch und daher plattformabhängig.

5. Kompilierte Programme unterstützen die Implementierung von Sicherheit im Code nicht – ein kompiliertes Programm kann beispielsweise auf jeden Speicherbereich zugreifen und mit Ihrem PC alles tun, was es will (die meisten Viren werden mit kompilierten Sprachen geschrieben).

6. Aufgrund mangelnder Sicherheit und Plattformabhängigkeit sind kompilierte Sprachen nicht für die Entwicklung internet- oder webbasierter Anwendungen geeignet.

Vorteile der interpretierten Sprache:

1. Ein PHP-Programmierer benötigt nur wenige Minuten, um eine „Nullzeiger-Ausnahme“ zu finden und zu beheben, da die PHP-Laufumgebung nicht nur die Art der Ausnahme angibt, sondern auch die spezifische Zeilennummer und Funktionsaufrufsequenz angibt, in der die Ausnahme auftritt ( die berühmten Stack-Trace-Informationen). Einen solchen Komfort bieten kompilierte Sprachen nicht.

2. Interpreter sind einfacher zu implementieren als Compiler

3. Ausgezeichnete Plattformunabhängigkeit

Hohe Sicherheit – das ist für Internetanwendungen dringend erforderlich

5. Die Größe des Zwischensprachencodes ist viel kleiner als der kompilierte ausführbare Code

Nachteile:

1. Er beansprucht mehr Speicher- und CPU-Ressourcen . Dies liegt daran, dass zum Ausführen eines in einer interpretierten Sprache geschriebenen Programms zunächst der zugehörige Interpreter ausgeführt werden muss. Dolmetscher sind komplexe, intelligente und ressourcenintensive Programme, die viele CPU-Zyklen und Speicher beanspruchen.

2. Die Ausführungseffizienz ist viel langsamer als bei kompilierten Programmen. Der Interpreter führt zahlreiche Codeoptimierungen und Laufzeitsicherheitsprüfungen durch; diese zusätzlichen Schritte beanspruchen mehr Ressourcen und verlangsamen die Anwendung weiter.

Der obige Inhalt dient nur als Referenz!

Empfohlenes Tutorial: PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonMuss PHP kompiliert werden?. 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