Hauptunterschied: PHP, eine serverseitige Skriptsprache, deren Hauptimplementierung in der Webentwicklung liegt. Es kann jedoch als universelle Programmiersprache verwendet werden. PHP4 und PHP5 sind zwei Versionen von PHP. PHP4 wurde am 22. Mai 2000 veröffentlicht. Am 13. Juli 2004 wurde PHP5 veröffentlicht. Es wurde von Zend Engine II angetrieben. Es war eine Verbesserung gegenüber PHP4 und enthielt verschiedene neue Funktionen.

PHP ist eine serverseitige Open Source-Skriptsprache, die in HTML eingebettet ist. Es kann grundsätzlich alle Aufgaben ausführen, die andere CGI-Programme ausführen können, es wird jedoch hauptsächlich zum Erstellen dynamischer Webseiten verwendet. Sein Hauptvorteil ist, dass es mit vielen Arten von Datenbanken kompatibel ist. Darüber hinaus kann PHP über IMAP, SNMP, NNTP, POP3 oder HTTP über Netzwerke kommunizieren.
PHP verfügt über eine Befehlszeilenschnittstellenfunktion und kann in eigenständigen grafischen Anwendungen verwendet werden. PHP-Befehle können direkt in ein HTML-Quelldokument eingebettet werden, anstatt eine externe Datei zur Verarbeitung von Daten aufzurufen. Im HTML-Dokument ist das PHP-Skript in spezielle PHP-Tags eingeschlossen. Aufgrund dieser Tags kann der Programmierer zwischen HTML und PHP wechseln, anstatt sich bei der Ausgabe von HTML auf große Mengen an Code zu verlassen. Da PHP auf dem Server ausgeführt wird, kann der Client den PHP-Code nicht anzeigen.

Am 13. Juli 2004 wurde PHP5 veröffentlicht. Es wurde von Zend Engine II angetrieben. Es war eine Verbesserung gegenüber PHP4 und enthielt verschiedene neue Funktionen, darunter eine verbesserte Unterstützung für die objektorientierte Programmierung, die Erweiterung PHP Data Objects (PDO) und zahlreiche Leistungsverbesserungen. Die PDO-Erweiterung definiert eine einfache und konsistente Schnittstelle für den Zugriff auf Datenbanken. In Version 5.3 wurde eine späte statische Bindung hinzugefügt. PHP5 wurde außerdem so entwickelt, dass es mit früheren PHP-Versionen abwärtskompatibel ist. Daher sollte bei der Konvertierung von PHP4 nach PHP5 nur wenig Funktionalität vorhanden sein.
Einige Unterschiede zwischen PHP4 und PHP5:
- PHP5 hat register_globals, magische Anführungszeichen und den sicheren Modus entfernt. Dies lag an der Tatsache, dass register_globals Sicherheitslücken geöffnet hatte, indem die Laufzeitdateninjektion absichtlich zugelassen wurde und die Verwendung magischer Anführungszeichen unvorhersehbarer Natur war.
- PHP4 wurde von Zend Engine 1.0 unterstützt, während PHP5 von Zend Engine II unterstützt wurde.
- PHP5 ersetzte die magischen Anführungszeichen durch die Funktion addslashes (), um Zeichen zu umgehen.
- PHP4 ist eher eine Verfahrenssprache, während PHP5 objektorientiert ist.
- In PHP5 kann man eine Klasse als Abstract deklarieren.
- PHP5 enthält statische Methoden und Eigenschaften.
- PHP5 führt eine spezielle Funktion namens __autoload () ein
- PHP5 erlaubt es, eine Klasse oder Methode als final zu deklarieren
- PHP5 führt eine Reihe von magischen Methoden ein, wie __call, __get, __set und __toString
- In PHP5 gibt es drei Sichtebenen: Öffentlich, privat und geschützt.
- PHP5 führte Ausnahmen ein.
- In PHP4 wurde alles nach Wert übergeben, einschließlich Objekten. Während in PHP5 alle Objekte als Referenz übergeben werden.
- PHP5 führt Schnittstellen ein. Alle in einer Schnittstelle definierten Methoden müssen öffentlich sein.
- PHP5 führt neue Fehlerstufe ein, definiert als 'E_STRICT'
- PHP5 führt neue Standarderweiterungen wie SimpleXML, DOM und XSL, PDO und Hash ein.
- PHP5 führt neue Funktionen ein.
- PHP5 führt einige neue reservierte Schlüsselwörter ein.
- PHP5 enthält zusätzliche OOP-Konzepte als PHP4, wie Zugriffskennzeichen, Vererbung usw.
- PHP5 beinhaltet eine verbesserte Unterstützung aktueller Content-Management-Systeme.
- PHP5 beinhaltet einen reduzierten RAM-Verbrauch.
- PHP5 bietet erhöhte Sicherheit gegen Ausnutzung von Schwachstellen in PHP-Skripts.
- PHP5 bietet eine einfachere Programmierung durch neue Funktionen und Erweiterungen.
- PHP5 führt eine neue MySQL-Erweiterung namens MySQLi für Entwickler ein, die MySQL 4.1 und höher verwenden.
- In PHP5 wurde SQLite mit PHP gebündelt.
- PHP5 führt eine brandneue integrierte SOAP-Erweiterung für die Interoperabilität mit Web Services ein.
- PHP5 führt eine neue SimpleXML-Erweiterung für den einfachen Zugriff auf und die Bearbeitung von XML als PHP-Objekte ein. Es kann auch mit der DOM-Erweiterung verbunden werden und umgekehrt.
- In PHP5 wurden Streams erheblich verbessert, einschließlich der Möglichkeit, auf Low-Level-Socket-Operationen auf Streams zuzugreifen.