Kategorie: PHP

PDO

PDO ist ein Akronym für „ PHP Data Object “ und ist ein Datenbank – API mit einem objektorientierten Fokus. Es dient als Alternative zu MySQL , MySQLi und ähnlichen Dritt DatenbankAPIs.

PDO ist gekennzeichnet durch teilweise objektorientiert, praktisch geschmolzen ist gegen SQL – Injektion und macht es einfach für Entwickler zwischen 13 Datenbanktypen zu wechseln. Einschließlich MySQL, ODBC , MSSQL etc.

MySQLi

MySQLi ( MySQL Improved) ist eine Datenbank – API für PHP . MySQLi ist eine von zwei Einbau-Alternativen zutraditionellen PHP MySQLAPI.

Referenzen

  • MySQLi Dokumentation und Beschreibung von PHP.net

Rasmus Lerdorf

Rasmus Lerdorf (geb. 22. november 1968 ) ist eine dänische -canadisk Software – Entwickler , die der Autor der serverseitigen Skriptsprache PHP dynamisch zu generieren Web – Seiten .

Lerdorf wurde in Godhavn / geboren Qeqertarsuaq in Grönland und hatte seine Kindheit in Dänemark , sondern zog nach Kanada mit seinen Eltern im Alter von 13 Jahren. [1] Er hat einen Abschluss als Ingenieur in der Software von der University of Waterloo ( Ontario , Kanada).

In 1995 begann die Lerdorf PHP – Projekt, das sich seitdem zu einem erfolgreichen entwickelt hat Open – Source – Programmiersprachen . Er hielt seine ersten Gespräche in Dänemark unter Reboot 1.0 Anordnung Mai fortgesetzt 1998 . Ab September Jahr 2002 und 7 Jahren arbeitete er für Yahoo! Inc. und arbeitet zur Zeit an Etsy.com. [2]

Rasmus Lerdorf ist eine wichtige Figur in der Open – Source – Bewegung und stehen mit Linus Torvalds ( Linux ) und Michael Widenius ( MySQL ) hinter der Initiative „No Software Patents“.

Lerdorf ist Christine Lerdorf verheiratet , mit der er Sohn C arl A lexande R L Erdorf (der Name ist eine rekursive Akronym daher die hohe R).

Referenzen

  1. Aufspringen^ http://lerdorf.com/bio/
  2. Aufspringen^ https://twitter.com/rasmus/status/172360148726190080

Laravel

Laravel ist eine kostenlose Open – Source – Framework auf Basis von PHP . Laravel von Taylor Otwell gegründet.

Der Rahmen folgt der Model-View-Controller – Struktur (MVC).

PHP

PHP ist eine objektorientierte serverseitige Programmiersprache verwendet , um dynamische Entwicklung von Webanwendungen und Websites . Die Sprache wurde von gegründet Rasmus Lerdorf und erteilte erstmals am 8. Juni 1995 . Das Projekt ist Open Source , was im Grunde bedeutet , dass jeder Zugriff auf den zugrunde liegenden Quellcode hat , die in geschrieben wird die Programmiersprache C . „PHP“ ist ein rekursives Akronym für „PHP: Hypertext Preprocessor“, sondern stand vor für „Personal Home Werkzeuge.“

PHP wird verwendet , prominente Dienstleistungen zu entwickeln , wie Facebook , Wikipedia , Yahoo , WordPress , Drupal , usw. Es ist die gemeinsame Sprache für dynamische Web – Lösungen , weil es eine große Gemeinschaft (hat Gemeinschaft ) in seinem Hinterland. Dies hat die Sprache interessant für Anfänger und Fortgeschrittene gemacht. PHP ist im direkten Wettbewerb mit Microsoft .NET Framework , Rubin , Python und Perl .

Geschichte

PHP begann als ein kleiner, einfacher CGI – Skript in Perl verwendet werden , um Verkehr Rasmus Lerdorfs persönliche Website zu überwachen. Es war zu dieser Zeit nie die Absicht , dass die Sprache jenseits seinem eigenen Server erreichen sollte. Da Perl – Skript zu langsam war seine Aufgabe zu erfüllen, wurde es auf C neu geschrieben

Andere Personen , die den gleichen Server verwendet entdeckt Rasmus‘ CGI – Wrapper und gefragt , ob sie es auf ihren jeweiligen Projekten nutzen könnten. Nicht viel Zeit vergangen , bevor es für mehr Funktionalität war die Nachfrage. Durch insgesamt verlangen Lerdorf eine – wie er selbst zugibt halb fertig – Verteilung mit Dokumentation, Mailingliste und FAQ. Die Verteilung wurde genannt Personal Home Werkzeuge , aber später änderte ihren Namen in persönlichen Homepage – Baukasten .

Unmittelbar nach der Fortsetzung Rasmus arbeitete und schrieb die grundlegende Funktionalität zu verbinden und mit einer SQL – Datenbank zu arbeiten. Dieses Tool wurde genannt Formular Interpreter , oder einfach nur FI .

PHP 3

In der späteren Umwandlung und Verschmelzung, zum ersten Mal möglich , seinen dynamischen PHP – Code in HTML Kontext einzufügen, anstatt in separaten Dateien. PHP 3 war sogar ein Umschreiben , die in Zusammenarbeit mit entworfen wurde Andi Gutmans und Zeev Suraski .

Sie wurden als eine vollständige Überarbeitung von PHP / FI als PHP / FI laut den Entwicklern gemacht wurde untermotorisiert ein , um E – Commerce – Programm , das sie auf einem Uni – Projekt arbeiten.

Zum Aufbau auf PHP / FI die über eine bestehende Nutzerbasis zusammenarbeiten Andi und Zeev Rasmus und kündigte PHP 3.0 als offizieller Nachfolger von PHP / FI.

PHP 3.0 wurde im Juni 1998, nach etwa 9 Monaten in öffentlichem Test offiziell freigegeben.

PHP 4

Im Winter 1998 ging Andiog Zeev ein Umschreiben von PHP-Kern gestartet. Das Ziel war es, die Performance von komplexen Anwendungen zu verbessern. Der neue Motor, genannt die Zend Engine , waren die Ziele. PHP 4.0 wurde auf dieser Engine basiert, und in Verbindung mit einer Vielzahl neuer Funktionen, es wurde im Mai 2000 veröffentlicht.

PHP 5

PHP 5 wurde im Juli 2004 nach mehreren Jahren der aktiven Entwicklung und Erprobung freigegeben. Version 5 wird durch den Kern angetrieben Zend Engine 2.0 . In PHP 5 kam eine stärkere Konzentration auf die Verbesserung der OOP Teil, aber es folgten zahlreiche Korrekturen und Ergänzungen, sowie herkömmliche Modifikationen.

Eine weitere bedeutende Änderung war automatisch Hinblick auf den Zeitzonen, wenn beispielsweise verwendet. Datum – und strtotime- Funktionen. Ab PHP 5 werden die Parameter und Ergebnisse zu / von diesen Funktionen werden von der Zeitzone des Servers beeinträchtigt werden. Dies bedeutet , dass UNIX-Zeit „0“ in GMT entspricht 1. Januar 1970 Uhr. 00.00, auf dänische Server umgewandelt Uhr automatisch. 01.00. Trotz der Umsetzung vieler wurde als Effizienz betrachtet, entstanden viele Probleme bei der Migration von PHP 4 bis 5, einfach weil viele Entwickler dieser Änderung nicht bewusst waren. So würde wurde der Code mit Handbuch in Bezug auf Zeitzonen geschrieben plötzlich automatisch sein, und die überwiegende Mehrheit der Fälle deshalb falsche Ergebnisse zurück.

In PHP 5.1 wurde Unterstützung für zusätzliche PDO (PHP Data Object) , die eine objektorientiert ist, sicherere und flexiblere Alternative zu der traditionellen MySQL – Implementierung. Es ist ferner bekannt , dass der grundlegende MySQL – API von PHP entfernt werden. Allerdings wird es durch eine langsame Phase-out, wie Sie wissen, hat, dass es immer noch die am weitesten verbreitete API für den Datenbankzugriff. Entwickler sollten daher zB mit PDO, starten MySQLi oder ähnliche Alternativen.

In PHP5.3 wurde die Möglichkeit zu schaffen anonyme Funktionen hinzugefügt.

PHP 5.4

PHP 5.4 war das Ergebnis sollte 6. Einer der kritischen Änderungen in PHP – Version 5.4 Schutz gewesen ist PHP gewesen gegen Methode Hacker namens Hash – inject wo Daten an den Server gesendet wird , wird so zusammengesetzt , dass es wird enorme Mengen an zusätzlichen Berechnungen auf dem Server erstellen , wenn die Daten sortiert werden.

Es wird auch ein neues hinzugefügt typehinting , aufrufbar . Dies bedeutet , dass eine durchsetzen kann , daß der Parameter, die eine Funktion übergeben wird aufgerufen werden kann – d.h. Typischerweise ist es eine Funktion.

PHP – Team hat auch eine neue Notation für die Arrays der Form [1, 2, 3, …] . Zur gleichen Zeit ist es möglich geworden , direkt zu einem Schlüssel in einem Array von einer Funktion zurück gehen. Beispiele für beide zeigten sich hier:

 Funktionstest () {
 zurück [ 'Wert a' , 'Wert zwei' ];
}
Echo - Test () [ 0 ]; // Wert ein

Der so genannten „ Fehler supression “, das @ -Zeichen vor den Funktionen setzen , die sie sollten keine Fehlermeldungen drucken hat in seiner Geschwindigkeit verbessert. Ursprünglich konzipiert diese Konstruktion auslaufen zu lassen.

Es wurde auch für Unterstützung Züge in OOP.

PHP hat auch mit einem integrierten Web-Server ausgestattet. Dies ist nicht für den öffentlichen Gebrauch gedacht, sondern nur den Quellcode zu testen.

Die umstrittene und infamøse abgesicherten Modus wurde komplett aus PHP entfernt, die mehrere Jahre vor der Ankündigung bekannt gegeben wurde. In der gleichen Gelegenheit ist register_globals und register_long_arrays ebenfalls entfernt. register_globals hat seit vielen Jahren von großer Sorge um die Sicherheit von PHP – Anwendungen , da diese Funktion es für Unbefugte leicht macht , in Variablen mit potenziell gefährlichen Inhalten zu senden und im Code mischen. Wenn register_globals ausgeschaltet war, oder jetzt entfernt, importieren die Programmierer auch externe Variablen und damit eine bessere Kontrolle darüber , was kommt, und wie werden sie validiert werden.

Übersicht

PHP verwendet , um dynamische Inhalte zu erstellen, einschließlich Online – Shops , Foren , Content Management Systeme , Intranet , Datenbankverarbeitung usw. Da es sich um eine so genannte ist für allgemeine Zwecke Sprache ist nicht beschränkt auf eine bestimmte Art von Arbeit zu lösen, und der Entwickler kreativ gegeben Freiheit, teilweise ihre Aufgabe, zu definieren , und teilweise auf den Prozess , in dem dieser angegangen werden müssen. Diese beiden Parameter gelten nicht für alle Programmiersprachen.

Server

PHP läuft auf der Web – Server – Software wie Apache oder IIS . Normalerweise , wenn ein Besucher kommt auf einer Website , auf den einer Seite abgefragt, und dies vom Server zurückgegeben wird. Hier bei statischen Web – Lösungen sprechen über HTML und CSS . Wenn die Besucher an einem PHP-basierten Server ankommen, ein Dolmetscher zwischen einem Besucher Nachfrage auf der einen Seite in Prozess vorhanden sein, und erhält die aufgerufene Seite. In diesem zusätzlichen Schritt in dem Prozess, wird der PHP – Code interpretiert und verarbeitet werden, und damit ein dynamisches Ergebnis zurück.

PHP verfügt über drei vorinstallierte APIs für mit Arbeits Datenbanken .

Dateierweiterung

Als Erweiterung von Dateinamen für PHP – Dateien werden oft .php, .php3, .php4, .php5 oder .phtml verwendet. Die Zahlen in der Verlängerung der .php angegeben durch den Web – Server verwendet werden , um festzustellen , welche Version des PHP – Parsers zu verwenden. Für die Anzeige der PHP – Dateien mit Syntax – Hervorhebung kann Erweiterung auf den Dateinamen .phps verwendet.

Abgrenzung

Um den Web-Server mitteilen, dass der Fall von PHP-Code, Sie den Code mit einigen Tags definieren. Wenn Sie es nicht tun, wird der Code nur als einfacher Text / HTML analysiert werden. Ein PHP-Skript beginnt immer mit <? Php und <? und endet mit>, aber es kann auch behandelt werden mit einem HTML-Tag?; <Script language = „php“>. Es gibt auch <? =?> Zu einem Direktdruck in HTML-Code verwendet. Es ist auch selten PHP geöffnet mit ASP-Tags wie <% und%> und <% =%> für den Direktdruck zu sehen. Es ist gültig, wenn „asp_tags“ in der PHP-Konfiguration aktiviert – wenn auch sehr selten man es in der Praxis sehen. Aus Gründen der Abwärtskompatibilität den so genannten „short Hand“ (<? =?>) Nur selten in Systemen verwendet, um auf verschiedene Server verteilt werden. In PHP 6 ist die Möglichkeit der Verwendung von ASP-Tags entfernt wurden.

PHP in Web – Umgebungen

Wenn ein Browser eine PHP – Seite Abfrage so interpretierte Code ersten Web – Server unter Verwendung ein. Plug-In – Programm , das entweder übersetzte zusammen mit dem Web – Server ( in der Regel Apache unter der GNU / Linux und Unix – siehe LAMP ) oder als CGI / ISAPI Programm ( in der Regel Internet Information Server oder Apache auf Windows – ), die dann die Web – Seite erzeugt , bevor sie an den Browser zurück geschickt wird , die interpretiert HTML – Code und zeigt die Website.

Verwenden Sie

PHP ist unter anderem für die Erzeugung verwendet Wikipedias Website, wo die gesamte PHP – Lösung genannt wird MediaWiki .

PHP kann auch für andere Zwecke als nur dynamische Web – Seiten verwendet werden, unter anderem Shell – Skripte und Programme mit einer grafischen Benutzeroberfläche (über die GTK + ) auch mit dieser Sprache codiert.

PHP kann als Open – Source – Alternative zu sehen ist Microsofts Active Server Pages (ASP) und CGI / Perl .

Der Interpreter für PHP ist meist Zends Zend Engine, die in geschrieben C und wurde in PHP verwendet worden , da PHP3 veröffentlicht wurde. PHP5, die veröffentlicht wurde. 13. Juli Jahr 2004 , verwendet die Zend Engine II.

Für PHP, gibt es eine Erweiterung von Komponenten und häufig Teile des Codes verwendet – PEAR ( P HP E XTension und A pplication R epository) – sehr ähnlich CPAN für Perl .

Klassifizierung

PHP ist als dynamisch klassifiziert und schwach , wenn es um Datentypen kommt. Das bedeutet , dass beide , die Sie mit Variablen und Funktionen arbeiten können , die nicht von Anfang an deklariert sind, und darüber hinaus, dass es eine strenge Beziehung zwischen einem Variablen-Typ und der Art der Daten ist die Variable enthält. Das ist die Art und Weise einer Ausführung, die gleiche Variable auch die beiden Textstrings inholdt hat, Zahlen, Objekte und Ressourcen. Dies macht das Beispiel gilt nicht in Sprachen wie C ++ und Object Pascal, wo Sie konvertieren über Typen.

PHP ist auch zwingend notwendig , Programmierung .

PHP im Vergleich zu Konkurrenten

PHP ist in der Regel stark in seiner Leistung / Geschwindigkeit, als auch als Open-Source und sich im wesentlichen von der Entwickler-Community. Es gibt viele Foren und Websites, die Hilfe, Anleitungen und Artikel zur Verfügung stellen, sowie gibt es Tausende von Erweiterungen, Frameworks und APIs.

.net

Net ist ein Gesamtrahmen von Microsoft im Web – Kontext erstreckt sich über C # , C ++ und Visual Basic . .Net wird häufig von Unternehmen bevorzugt aufgrund seiner stärkeren Umsetzung (von besonderer MVC ) und Abwärtskompatibilität, und weil gerade hat .net seit vielen Jahren für Unternehmen verwendet. Die beiden Sprachen / Frameworks einen langen Weg in Richtung die gleichen Aufgaben zu lösen.

Python

Einer der prominenten Unterschiede zwischen Python und PHP ist rein ästhetisch. PHP verwendet „ geschweifte Klammern “ , das heißt, die Zeichen {und}, den Anfang und das Ende der Codeabschnitte zu markieren. Diese haben nie Teil von Python gewesen, und wenn Sie die Entwickler glauben, sowie ein Osterei in Python gepflanzt, es wird nie passieren. Die beiden Gemeinden haben interne Geplänkel, basierend auf , dass , wenn Sie wie geschweiften Klammern, so dass Sie PHP wählen sollten, und wenn Sie nicht können, dann sollten Sie Python wählen.

Ruby

Ruby wird oft im Vergleich zu PHP, in Verbindung mit den Schienen . Rails ist Ruby für Web – Entwicklung stapeln. Wie Python Ruby – sehr læsligt Syntax und nicht Semikolon erforderlich. Im Vergleich zu Python Ruby – erfordert keine Vertiefung in der Syntax. Im Vergleich zu PHP, laufen viele Schienen – Funktionen über einen Terminal und ermöglicht es den Entwickler anderen und manchmal mehr Möglichkeiten für die Bereitstellung und Wartung.

Perl / CGI

Text fehlt , helfen Sie uns , Text zu schreiben

Syntax

PHP hat eine relativ freie Syntax , die ein langer Weg geht es dem Programmierer erlaubt , seinen eigenen Stil zu schaffen. Die Meinungen sind über die große Freiheit geteilt, wo einige glauben , dass es zu viel unordentlich Code aus Programmierer verursacht hat , die in Teamarbeit unerfahren sind, während andere behaupten , dass es die Sprache mehr Spaß macht zu arbeiten. Es gibt mehrere definierte Standards, einschließlich PHP eigene PECL einen Führer hat, was richtige Syntax gilt. Die Idee eines solchen gemeinsamen Standard ist die Vereinfachung der Aktie und verstehen anderer Entwickler Code sowie einfacher seinen eigenen Code zu verstehen , wenn in der Zukunft wird es pflegen und bearbeiten.

Hallo Welt

Die klassische Hallo, Welt! -Beispiel:

<? Php
 echo "Hallo Welt!" ;
?>

Variablen

Variablen sind die Speicher der Anwendung , wo es um die Werte speichert Sie zu einem späteren Zeitpunkt verwenden möchten. Im Folgenden wird sehr einfach – und sehr statisch – beispielsweise die Bildung von zwei Variablen, x und y, und ihre Werte werden berechnet und in die Variable gesetzt, ergibt . Schließlich wird das Ergebnis geschrieben , so dass die Besucher der Website in der Lage sein wird , sie zu sehen.

<? Php
$ x = 4 ;
$ Y = 5 ;
$ Result = $ x + $ y ;
echo $ result ; // 9
?>

Im Gegensatz zu vielen anderen Programmiersprachen ist es keine Voraussetzung, dass in PHP eine Variable definiert, bevor Sie sie verwenden.

If / Else

<? Php
 // if - else
 wenn ( $ variable < 10 ) {
 echo "Die Variable ist weniger als 10" ;
 }
 Else {
 echo "Variable größer oder gleich 10" ;
 }
?>

Loops

Eine Schleife ist ein Algorithmus, der eine Operation wiederholt x Anzahl von Malen. X kann entweder fest oder variabel definiert. PHP unterstützt verschiedene Arten von Variablen.

  • zu
  • foreach
  • während
  • Do – Während

Beispiel einer währende Schleife mit Druck Iteration arbeiten, solange dieser Wert unter 10 liegt.:

<? Php
während ( $ i < 10 ) {
 echo $ i ;
 $ I ++ ;
}
?>

A für Schleife von Läufen von einem Wert zu einem anderen. Es gibt eine Reihe von Möglichkeiten , um diesen Bereich auszudrücken , wo unten zeigt die am häufigsten. Der dritte Parameter in dem -løkken drückt die Art , in der der Wert zunimmt oder abnimmt. In den meisten Fällen würden Sie i bei jeder Iteration der Schleife ++ $ zu verwenden ist ein Wert für die Variable in . Sie könnten beispielsweise auch schreiben $ I– eine nach unten gerichtete Schleife oder zB $ i = $ i + 4 , wenn Projektionen in Schritten sein müssen , ein vierten

< ? Php?
Für ( $ i = 0 ; $ i <= 20 ; $ i ++ ) {
 echo $ i . "<br />" ;
}
?>

Foreach -løkken Schleife durch alle Schlüssel / Wert in einem Satz verwendet Array . PHP unterstützt assoziative Arrays, und man kann nicht kategorisch sicher sein , dass die Schlüssel von zB gehen 0 bis 20, und damit ein für Schleife beweist die oft unzureichend , um die Aufgabe sein.

<? Php
$ a = Array ( 1 , 2 , 3 , 17 );
foreach ( $ a als $ v ) {
 echo "Der Wert von $ \ a: $ v . \ n " ;
}
?>

Klasse

Klassen und Objekte eingeführt in PHP 3, aber deutlich insbesondere PHP 5 und 5,4 verbessert. Eine einfache Klasse könnte wie folgt definiert werden:

Klasse Audi erweitert Car {
 privat $ Modell ;
 öffentliche Funktion __construct ( $ Modell ) {
 $ this -> Modell = $ Modell ;
 }
}

Das entsprechende Objekt kann instanziiert werden, wie folgt:

$ Audi_r8 = neue Audi ( "R8" );

Es ist möglich , statische Funktionen zu erstellen , die ein weltweites Programm und ohne Instanziierung der Klasse aufgerufen werden kann. Diese zugegriffen mit dem so genannten Bereichsauflösungsoperator (: 🙂 dieses Muster:

Audi :: audis_historie ();

Statische Funktionen werden in der gleichen Weise wie normale definiert. Features, jedoch verwendet die Signatur „ statisch “ vor dem Stichwort „ Funktion “.

Gemeinschaft und Erweiterungen

PEAR und PECL

Text fehlt , helfen Sie uns , Text zu schreiben

Frameworks

Hauptartikel: Frameworks für PHP .

Es gibt eine breite Palette von Dritter Frameworks für PHP.

  • Laravel
  • CakePHP
  • CodeIgniter
  • PHP auf TRAX
  • QPHP
  • symfony
  • Zend

Bücher und Dokumentation

Text fehlt , helfen Sie uns , Text zu schreiben

PHP – Dokumentation auf PHP offizielle Website php.net . Die Dokumentation beschreibt die verschiedenen Teile der Sprache und oft gibt es Beispiele für die Verwendung von, zum Beispiel. Funktionen.

Gemeinschaft

Text fehlt , helfen Sie uns , Text zu schreiben

Performance

Normalerweise betrachten PHP als schnellen Programmiersprache, aber die Programmierer des Verständnis der Funktionen und Algorithmen ist ebenso wichtig , dass der Code die höchste Leistung zur Verfügung stellt. In einfachen Beispielen gemessen Leistung mit PHP eingebautem Mikro time () – Funktion, die die aktuellen Zeitstempel in ermöglicht Mikrosekunden . PHP hat viele Funktionen, die im Grunde das Gleiche tun, aber nicht unbedingt in der gleichen Art und Weise, warum sie in ihrer Siedlung unterschiedlich sind. Je nach Situation, drucken Sie die „Echo“ einige Male schneller als die entsprechenden „Druck“ . Aber in besonderen Fällen auf der Druckfunktion schneller sein. Ein weiteres Beispiel ist die Vergleichsoperatoren und === ==. Letzteres ist schneller, aber nur gibt das gewünschte Ergebnis , wenn die beiden Datentypen identisch sind.

Normalerweise sind diese Unterschiede von Nano- und Mikrosekunden. In diesen Fällen ist die Leistung mehr ein Zeichen von Qualität als eine praktische Notwendigkeit. Es gibt Ausnahmen für besonders komplexe, umfangreiche oder weit verbreiteten Systeme, in denen gutes Verständnis von Leistung benötigt wird. Dazu gehört insbesondere die Schleifen verwendet, wie sie verwendet werden und die Anzahl der Anrufe auf die Datenbank.

Sicherheit

Eines der am häufigsten bekannten Sicherheitsprobleme in PHP ist superglobals von denen das Risiko von SQL – Injektionen . SQL – Injektionen sind kurz, ein oder mehr Sonderzeichen einfügen ( in der Regel ‚oder„) in den an die Server gesendeten Daten. Wenn die Anwendung nicht ausreichend geschützt ist , diese Zeichen die Möglichkeit , Personen mit gründlichen Kenntnissen in SQL öffnen, extrahieren und manipulieren , Daten, wurden sie nicht vorgesehen.

Vor der Version 5 wurde genannt magic_quotes standardmäßig aktiviert, aber sie haben seit standardmäßig wird vollständig abgeschafft in Version 5.4 ausgeschaltet. magic_quotes hilft Anfängern gegen SQL – Injektionen zu schützen, aber Rasmus Lerdorf und andere prominente PHP Persönlichkeiten haben argumentiert, dass es letztlich nicht die Sprache Verantwortung oder Aufgabe ist es , während der indirekten nicht – Programmierer Förderung Löcher bewusst sein , potentieller Sicherheit und Bedrohungen. PHP, bieten jedoch eine Reihe von Werkzeugen gegen SQL – Injektionen zu schützen, einschließlich Funktionen add_slashes und mysql_real_escape_string . Diese sind für einen klassischen, prozeduralen Ansatz zu den Datenbanken. Man verwendet die objektorientierte PDO gibt es praktisch keine Gefahr von Injektionen, die Systemdaten Parameter und Abfrage getrennt hält.

Abgesicherter Modus ist so konzipiert, auf gemeinsam genutzten Servern ein Sicherheitsrisiko für das Leben zu sein. Es wird als ein PHP-Skript gemacht, die in geht und legt Beschränkungen auf, was erlaubt ist. Eine der größten Einschränkungen ist, dass Dateiverarbeitung stark eingeschränkt ist, und viele Open-Source-Systeme sind somit nicht verfügbar. In vielen dänischen Web-Hosting ist keine Option abgesicherten Modus aus der Domäne zu drehen, die großen Probleme verursacht. Der abgesicherte Modus ist auch in PHP sechsten entfernt

Kritik

PHP wurde für seine inkonsistente Benennung von integrierten Funktionen und Klassen sowie vordefinierte Konstanten kritisiert. Einige Funktionen sind zum Beispiel mit Unterstrichen genannt, wie in mysql_fetch_array , während andere mit großen Anfangsbuchstaben benannt werden , um Wörter zu unterscheiden. Zum Beispiel bindParam von PDO – Bibliothek.

PHP ist auch für seinen „losen“ Ansatz kritisiert gegenüber dem Beispiel seiner Muttersprache C , die die Daten verwendeten Typen validiert. In PHP ist es möglich , Zahlen zu mischen, Text, Boolesche Werte, usw. zusammen. Es ist praktisch , wenn Sie mit PHP Umgang und Verhalten erlebt, sondern von einem Programmier theoretischen Sicht ist es nicht immer unerwünscht. Wenn PHP , um zu bestimmen , wie die Werte behandes sollten, suchen, unter anderem, auf den logischen Operatoren zwischen den Werten angelegt. Ein Punkt „“ Um anzuzeigen , dass Sie von Text setzen wollen zusammen Stücke während mathematischen Operatoren wie +, -, / und * wird der Begriff als solche behandeln. Mischen einer Textzeichenfolge, zum Beispiel „66 – Tests“, in einen solchen Expressions, führt eine sogenannte PHP Typisierung . Es wird zwischen verschiedenen Arten von Daten und Kontext variiert, was das Ergebnis ist. In diesem Fall ist das Ergebnis 66, weil PHP programmiert ist , was zuerst im Text erscheinen zu untersuchen. Dies ist eine Zahl, die die Zahl in dem Ausdruck verwendet und den Rest des Textes fallen. Gibt es keine Zahlen, Einfügen von PHP ein 0.

Die Entwickler haben auch versucht , Multithreading (Verwendung mehrerer Prozessorkerne ) und Unicode -understøttelse. Letzteres ist Berichten zufolge in der Entwicklung, aber bereits die Veröffentlichung von PHP 6 erheblich verzögert.

PEAR

PEAR ist als Infrastruktur für die Verteilung von wieder verwendbaren entwickelte PHP -programmel. PEAR definiert einen Standard für unter anderem Fehlerbehandlung, Dokumentation und Verteilung von Software.

Installieren von PEAR – Pakete

PEAR verfügt über eine Befehlszeilenschnittstelle Paket – Installation und Updates zu verwalten:

 # Pear installieren MDB2
 Herunterladen MDB2-2.1.0.tgz ...
 Ab zwei Download MDB2-2.1.0.tgz (90119 bytes)
 .......... getan: 90119 Bytes
 installieren ok: Kanal: //pear.php.net/MDB2-2.1.0

Paketlisten

Ebenso Abrufen einer Liste aller Pakete angeboten:

 # Pear list-all
 Alle Pakete:
 =============
 PAKET AKTUELLE LOCAL
 Pear / Auth_HTTP 2.1.6 HTTP-Authentifizierung
 [Snip - 382 weitere Pakete]