Das Buch "Einstieg in PHP 7 und MySQL 5.6: Für Programmieranfänger geeignet. Programmieren Sie dynamische Websites mit PHP" setzt sich zum Ziel, einen gelungenen Einstieg in die neusten Versionen der bekannten Web-Programmiersprache PHP und dem weit verbreiteten relationalen Datenbankmanagementsystem MySQL zu bieten.

Das Buch ist in mit fast 600 Seiten sehr umfangreich, die Kapitel aber inhaltlich sehr gut strukturiert, voneinander getrennt und mit genug Codebeispielen versehen, um das Gelernte direkt umzusetzen (wobei die Beispielprojekte und -übungen auch wirklich selbst bearbeitet und nicht nur nachkopiert werden sollten, um voll von ihnen zu profitieren). Es schadet nicht, wenn der Leser bereits Erfahrungen mit HTML und Programmiersprachen abseits von PHP gesammelt hat, auch auf die Datenbanksprache SQL und das Verwaltungssystem phpMyAdmin wird nur rudimentär eingegangen; diese Basics sollte man entweder bereit beherrschen oder sich vor der Lektüre dieses Buchs andere Literatur besorgen bzw. einige Tutorials im Internet durcharbeiten.

Wer bereits PHP-Kenntnisse hat, kann durch den modularen Aufbau problemlos mit den Kapitel beginnen, die für die eigenen Ziele relevant sind.
Die beiliegende DVD bietet neben weiterführenden Übungen die Möglichkeit, Codebeispiele sofort auszuführend und einiges an Software mit. Wieso in Buch und DVD auf die WAMPStack Umgebung statt auf das gebräuchlichere, intuitiver bedienbare und besser gepflegte XAMPP gesetzt wird, bleibt unklar. Dies ist eine der Schwächen des Buches, die es besonders unerfahrenen Lesern erschwert, richtig damit zu arbeiten. Ein weiterer Makel ist, dass einige im Buch vorgestellte Techniken nicht mehr dem aktuellen Standard entsprechen; gerade in puncto Sicherheit wird vieles nur angekratzt oder im Code unzureichend berücksichtigt.

Einstieg in PHP 7 und MySQL 5.6: Für Programmieranfänger geeignet. Programmieren Sie dynamische Websites mit PHP. - Partnerlink

Einstieg in PHP 7 und MySQL 5.6: Für Programmieranfänger geeignet. Programmieren Sie dynamische Websites mit PHP. - Partnerlink

Dem Anspruch, insbesondere auf PHP 7, respektive MySQL 5.6 einzugehen wird das Buch aber vollumfänglich gerecht.

Dabei sind in PHP 7 besonders folgende Neuerungen hervorzuheben, die in dem Buch allesamt ausreichend behandelt werden:

  • PHP 7 ist flexibler, was die Verwendung skalarer, anstelle statischer Ausdrücke angeht
  • Konstante Arrays wurden eingeführt
  • Über den neuen … Operator lassen sich Funktionen mit variabler Parameterzahl einfacher implementieren
  • Der aus anderen Programmiersprachen bekannte Splat-Operator, der traversierbare Objekte in Listen entpackt wurde implementiert
  • Mit ** gibt es einen neuen Potenzoperator
  • Mit phpdbg verfügt PHP 7 über einen interaktiven Debugger, der die Entwicklung massiv vereinfachen kann
  • Es gibt eine neue Standardzeichenkodierung
  • Die via php://input geöffneten Streams können jetzt mehrfach genutzt werden, was den Speicherverbrauch eines Skripts massiv reduzieren kann
  • PHP 7 kann mit Dateiuploads von mehr als 2GB umgehen
  • Mit hash_equals() gibt es eine neue Methode zum Vergleich zweier Strings in konstanter Zeit, ohne dabei für Rechenzeitangriffe anfällig zu sein
  • Die neue magische Methode __debuginfo() kann genutzt werden, um zusätzliche Informationen anzugeben, die via var_dump() ausgegeben werden
  • PHP 7 unterstützt den gost-crypto Hashalgorithmus
  • Die Implementierung von SSL/TLS wurde in PHP 7 verbessert
  • Die Interaktion mit PostegreSQL Datenbanken kann nun asynchron erfolgen

Insgesamt ist mit PHP 7 eines der umfangreichsten Updates für die Programmiersprache erschienen, das viel Optimierungspotential bietet und Einsteigern die Gelegenheit gibt, von vornherein sauberen und optimierten Code zu schreiben.

Die Änderungen in MySQL 5.6 fallen dabei geringer, aber nicht minder sinnvoll aus:

  • MySQL bietet eine neue Datei namens .mylogin.cnf, um Anmeldeungsdaten verschlüsselt zu speichern
  • Das neue sha256_password Plugin bietet eine verbesserte Verschlüsselung
  • MySQL Nutzern kann nun standardmäßig ein Verfallsdatum für Passwörter zugewiesen werden
  • Es gibt einige weitere geschlossene Sicherheitslücken und zusätzliche Warnungen bei unsicheren Eingaben
  • Die MySQL Enterprise Version arbeitet nun besser mit der Oracle Audit Vault Software zusammen und bietet mit der MySQL Enterprise Firewall eine zusätzliche Software
  • Die Unterstützung weiterer InnoDB Features wurde hinzugefügt
  • MySQL 5.6 ist wesentlich schneller als Vorgängerversionen (zumindest standardmäßig ohne weitere Optimierungen), unter anderem durch verbesserte Regeln für die Query-Optimierung
  • Die Partitionierung von Tabellen wurde vereinfacht und erlaubt nun ein bis zu 8192 (Unter-)Partitionen
  • Die neue MySQL Version unterstützt den GET_DIAGNOSTICS Befehl, der Diagnosefunktionen bereitstellt und etwa zurückgibt, ob ein vorgehender Befehl zu einem Fehler führte und um welchen es sich gehandelt hat, wenn dies der Fall war
  • Zeitangaben lassen sich nun noch genauer erfassen
  • Einige Funktionen werden nicht mehr weiterentwickelt oder wurden sogar entfernt, eine genaue Auflistung findet sich hier bzw. hier.