WikiDer > PHP

PHP
PHP
PHP
ParadigmaImperativ
Objektorientierten (ab PHP 3)
erschien1995[1]
Entworfen vonRasmus Lerdorf
Entwickelt vonDie PHP-Gruppe
Aktuelle Version8.0.2 / 7.4.12 / 7.3.21 (3. Februar 2021 / 27. Oktober 2020 / 6. August 2020)[2]
Typensystemdynamisch, schwach
Dialektehacken
Beeinflusst vonC, perl, Python
BetriebssystemMultiplattform
LizenzPHP-Lizenz 3.01
Dateierweiterungen.php, .php3, .php4, .php5, .inc.php, .inc, .phtml, .phps
Webseitehttps://www.php.net/
Portal  Portalsymbol  Informatik

PHP (PHP: Hypertext-Präprozessor) ist ein Skriptsprache, das soll Webserverdynamische Webseites zu erstellen. PHP wurde 1994 von . entwickelt Rasmus Lerdorf, ein Senior Softwareentwickler Biene IBM. Lerdorf gebraucht perl als Inspiration.

Ursprünglich standen die Buchstaben PHP für Persönliche Homepage (der vollständige Name war Persönliche Homepage/Formular-Dolmetscher, PHP/FI). Seit PHP 3.0 ist die Bedeutung a rekursives Akronym werden: PHP: Hypertext-Präprozessor. Dieser Name gibt an, wofür die Sprache normalerweise verwendet wird: Verarbeitung von Informationen in Hypertext (normalerweise HyperText Markup Language (HTML) und Erweiterbare HyperText Markup Language (XHTML)).

Eigenschaften

PHP ist eine Skriptsprache und ähnelt Perl, Python und Rubin. Qua Syntax PHP ähnelt am meisten C. Im Gegensatz zu C ist es in PHP (insbesondere PHP5) möglich objektorientierten zu programmieren, genau wie in zum Beispiel Java, C und C♯. Wie bei vielen anderen Skriptsprachen Variablen ein a . vorangestellt werden Dollarzeichen ("$"). Dies steht im Gegensatz zu Sprachen wie C, C und Java. Diese stammt aus der Skriptsprache Perl, von der PHP teilweise abgeleitet ist. Nächster serverseitiges Skripting PHP kann auch über die Befehlszeile oder in GrafikAnwendungen, zum Beispiel mit PHP-GTK (PHP mit GTK ).

PHP macht beides objektorientierten ('Programmieren mit Klassen') if Verfahrensprogrammierung ('Programmieren mit Funktionen') möglich. Ursprünglich war die prozedurale Programmierung die wichtigste, aber die Aufmerksamkeit verlagert sich zunehmend auf die objektorientierte Programmierung.[Quelle?]

EIN serverseitiges SkriptingSprache, die hauptsächlich verwendet wird, um Webserver Das Erstellen dynamischer Webseiten ist für den Benutzer unsichtbar. Nur das Ergebnis ist sichtbar und sieht aus wie eine normale HTML-Seite. Die Vorteile von PHP sind: es ist Quelloffene Software, es ist sehr beliebt, leicht zu erlernen und es gibt eine breite Unterstützung im Internet.

PHP wird oft in Kombination mit a . verwendet relationale Datenbank benutzt. Die am häufigsten verwendeten relationalen Datenbanken für PHP sind MySQL und PostgreSQL. Es ist auch möglich, andere Datenbanken mit PHP zu verwenden, wie z MongoDB und mSQL.

Es gibt viele verschiedene Anwendungen für PHP, wie zum Beispiel Datenverarbeitung, Zugriff auf Datenbanken, Dateibearbeitung und Generierung von Bildern und XML. Einiges davon ist in der Sprache verwurzelt, einiges ist über Erweiterungen und Module verfügbar (u.a. über Birne).

Geschichte

PHP wurde 1994 von Rasmus Lerdorf entwickelt. Die erste öffentliche Version wurde 1995 veröffentlicht, ebenso wie Version 2. Zeev Suraski und Andi Gutmans, zwei israelische Entwickler bei der Technion IIT, schrieb 1997 den Parser neu und bildete die Grundlage für PHP 3, indem er ihn umbenannte in PHP: Hypertext-Präprozessor. Das Entwicklerteam veröffentlichte PHP/FI 2 nach monatelangen Betatests im November 1997 offiziell. Danach begannen die öffentlichen Tests von PHP 3 und PHP 3 wurde im Juni 1998 offiziell veröffentlicht. Suraski und Gutmans begannen dann, den PHP-Parser neu zu schreiben, was 1999 zur Zend Engine führte. Das machte Sendetechnologien Gegründet in Ramat Gan, Israel.

Am 22. Mai 2000 wurde PHP 4, powered by Zend Engine 1.0, veröffentlicht. Am 13. Juli 2004 wurde PHP 5 veröffentlicht, das von der neuen Zend Engine II angetrieben wird.

Obwohl PHP 5 bereits seit 2004 verfügbar ist, verwenden viele Webserver PHP 5 erst seit Anfang 2007, da frühere Versionen nicht stabil genug waren. Die neueste stabile Version ist 5.6.29 (8. Dezember 2016). Dies ist auch die letzte Version von PHP 5 unter aktiver Unterstützung. Von 2017 bis 2018 werden nur Sicherheitsanpassungen für PHP 5.6 vorgenommen.

Die Hauptmerkmale von PHP 5 sind die verbesserte objektorientierte Programmierung, die höhere Geschwindigkeit, die Fähigkeit, SQLite ansprechen und das erneuerte Erweiterbare Auszeichnungssprache (XML-)Bibliothek. Zwischen der Version 5.0 von 2004 und der aktuellen Version 5.6 gibt es übrigens noch eine deutliche Weiterentwicklung.

Am 3. Dezember 2015 wurde PHP 7.0.0 verfügbar, mit stark verbesserter Geschwindigkeit und neuen Funktionalitäten, einschließlich Typhinweisen auf Skalartypen und Rückgabetypen.

PHP 7.1.0 wurde am 1. Dezember 2016 veröffentlicht. Neu in dieser Version sind: nullable-Typen; void Rückgabetyp für Funktionen und iterierbarer Pseudotyp.

Eine Version 6 ist nie erschienen. Es gab einen Anstoß dazu und ein wichtiger Teil wäre die Unterstützung für Unicode muss werden. Es gab viel Kritik an der Umsetzung und es fehlte auch an Entwicklern, die die nötigen großen Anpassungen vornehmen konnten. Letztendlich kam die Entwicklung im März 2010 ins Stocken. Mehrere Komponenten, die in Version 6 kommen würden, wurden auf die Versionen 5.3 portiert. Andere Anpassungen wie Züge und Verschluss wieder binden sind in PHP 5.4 gelandet.

Um Verwechslungen über die ursprünglich vorgesehene Version 6 (z. B. bereits geschriebene Bücher) und den eigentlichen Nachfolger des PHP 5-Zweigs zu vermeiden, wurde beschlossen, die Nummerierung bei 7 fortzusetzen.

PHP 8 wurde am 26. November 2020 mit stark verbesserten Funktionalitäten veröffentlicht.

Benutzen

PHP wird häufig verwendet, um dynamisch Webseiten auf Webservern zu erstellen. Andere bekannte serverseitige Skriptsprachen sind Java Server-Seiten (JSP), ColdFusion und Aktive Server-Seiten (ASP). Der Code der Seite wird auf dem Webserver ausgeführt und das Ergebnis wird an den Computer des Besuchers gesendet und im Webbrowser gezeigt. Dies steht im Gegensatz zu clientseitigem Scripting (wie z Javascript), wobei der Webbrowser zuerst die Seite vom Webserver herunterlädt und dann den Code selbst (auf dem Computer des Besuchers) ausführt.

Wenn ein Browser ein PHP-Dokument aufruft, führt der Server zunächst den im Dokument enthaltenen PHP-Code aus. Dies erfolgt durch den PHP-Interpreter (die PHP-Engine). Das Ergebnis (meist HTML) wird vom Webserver an den Browser gesendet. PHP kann jedoch auch andere Dokumenttypen wie Bilder oder XML generieren. PHP-Dokumente haben oft die Erweiterung .php, aber die älteren Erweiterungen werden immer noch (wenn auch sporadisch) verwendet.

PHP unterstützt auch mehrere Erweiterungen, die (in der FensterVersion) als separates Modul. Die gesamte Dokumentation finden Sie im PHP-Handbuch. PHP ist bei Webprogrammierern beliebt geworden, unter anderem aufgrund der leicht zugänglichen Dokumentation (zentral an einem Ort).[Quelle?]

PHP wird oft in Verbindung mit dem Betriebssystem verwendet Linux, das Apache Webserver und die MySQL Datenbank-Software. Eine solche Kombination wird abgekürzt mit LAMPE. Es kommt auch manchmal vor, dass Leute Windows anstelle von Linux verwenden. WAMP ist die Abkürzung für Systeme, die Fenster verwenden und manchmal die Abkürzung MAMP verwendet für die Apple Macintosh. Es gibt auch fertige Programme, die eine komplette WAMP-Umgebung installieren. Beispiele sind WAMP und XAMPP.

Popularität

PHP ist sehr beliebt und wird für alle Arten von Webanwendungen wie Bulletin Boards/Foren, Content-Management-Systeme, Blogs und Wikis. Mehr als 26 Millionen Websites werden mittlerweile mit PHP erstellt.[Quelle?]

Syntax

In PHP-Dokumenten kann Text dem Benutzer auf verschiedene Weise präsentiert werden. In serverseitigen Dokumenten kann PHP frei zwischen den HTMLTags werden aufgerufen. Im folgenden Beispiel wird der gesamte Text außerhalb der PHP-Tags automatisch an den Browser gesendet. Alles innerhalb der PHP-Tags wird von PHP verwendetDolmetscher hingerichtet. Auf diese Weise können dynamische HTML-Dokumente erstellt werden.

<!DOCTYPE html><meta charset=utf-8><title>PHP Test</title>// Dies ist eine kommentierte Zeile/* Das sind zwei Zeilen mit Kommentar*/Echo'Hallo Welt';?>

In PHP können Strings sowohl mit einfachen als auch mit doppelten Anführungszeichen geschrieben werden. Variablen beginnen mit einem Dollarzeichen. Wenn Strings mit doppelten Anführungszeichen geschrieben werden, werden die im String verwendeten Variablen durch ihren Wert ersetzt (dies wird zu variable Interpolation erwähnt).

Unten ist ein Beispiel, das die variable Interpolation verwendet, um dem Benutzer die URL dieses Artikels zu melden:

$url="http://en.wikipedia.org/wiki/PHP";Echo„Du bist gerade auf $url Herzlich willkommen!";//OderEcho„Sie sind gerade auf“.$url.". Herzlich willkommen!";?>

Um mit einer Datenbank zu interagieren, muss PHP zuerst zu a DBMS (zum Beispiel MySQL). Dazu unter anderem die mysqliBibliothek von PHP verwendet werden:

$db_hostname="lokaler Host";// Der Ort, an dem der MySQL-Dienst ausgeführt wird$db_user="Nutzername";// Der Benutzername um sich mit der Datenbank zu verbinden$db_password="Passwort";// Das Passwort um sich mit der Datenbank zu verbinden$db_name="Datenbank";// Der Name der Datenbank selbst, er muss über das DBMS erstellt werden$mysqli=Neumysqli($db_hostname,$db_user,$db_password,$db_name);?>

Dann nach der Verbindung, mittels der SQLSprache werden Daten abgefragt. Unten ist ein Beispiel zum Abrufen eines Nachrichtenartikels:

$abfrage="WÄHLEN * AUS Nachrichtenartikeln";$Ergebnis=$mysqli->Abfrage($abfrage);$zeile=$Ergebnis->fetch_assoc();Echohtmlentitäten($zeile["Titel"]);Echohtmlentitäten($zeile["Botschaft"]);?>

Sicherheit

Die Gesamtsumme der in PHP geschriebenen Anwendungen in den Jahren 1996-2003 macht etwa 29 % aller Sicherheitslücken aus (z Cross-Site-Scripting bis um Denial of Service), die bei a gemeldet und registriert wurden CVE-Referenz in dem Nationale Schwachstellendatenbank[3][4], eine von der US-Regierung eingerichtete Website, die Sicherheitslücken in Software meldet. Einige spezifische Spracheigenschaften und (Standard-) Konfigurationsparameter (wie z magische zitate und register_globals.[5]) haben in der Vergangenheit PHP unsicher gemacht. Unterstützung für magic_quotes_gpc und register_globals wurde seit Version 5.3.0 als veraltet markiert und seit Version 5.4.0 vollständig aus PHP entfernt.[5][6]

Darüber hinaus werden auch in PHP selbst regelmäßig Sicherheitslücken gefunden und behoben, etwa 390 Stück (gezählt bis 22. September 2013).[7]

Mindestens eine dieser Sicherheitslücken wurde 2012 von den Niederländern entdeckt, die der National Vulnerability Database als bekannt sind Zentralprozessor-2012-1823. Die Schwachstelle bestand darin, dass der Quellcode von PHP-Seiten in einigen Serverkonfigurationen abgefragt werden konnte, indem nur ein einziger Parameter zur URL der Seite hinzugefügt wurde.[8] Die Versionen 5.3.12 und 5.4.2 wurden speziell veröffentlicht, um diese Sicherheitsanfälligkeit zu beheben.

Entwicklungsumgebungen

Viele Quellcode-Editoren bieten Unterstützung für PHP wie Syntaxfärbung und automatische Vervollständigung. Einige davon sind:

Darüber hinaus gibt es für PHP5 verschiedene Rahmen verfügbar, die bestimmte Aufgaben vom Programmierer übernehmen. Einige davon sind:

Mit PHPDoc, Dokumentation aus der Vanuit Quellcode erzeugt werden; das ist ähnlich Javadoc vor dem Java. Auch für Unit-Tests ist eine Standardlösung in Form von PHPUnit.

Siehe auch

Externe Links

Wikibooks hat mehr zu diesem Thema: Programmierkurs in PHP.