Neue Features
 
  Neuer Typ: object
  
   Der neue Typ object wurde eingeführt. Er kann verwendet
   werden, um (kontravariant) Parameter und (kovariant) Rückgabewerte
   beliebiger Objekte zu typisieren.
  
  
  
 
  Erweiterung nach Name laden
  
   Um Shared- (gemeisam genutzte) Erweiterungen zu laden, wird keine
   Dateierweiterung (.so unter Unix oder
   .dll unter Windows) mehr benötigt. Dies gilt sowohl für
   die Datei php.ini als auch für die Funktion dl().
  
  
 
  Überschreiben abstrakter Methoden
  
   Wenn eine abstrakte Klasse eine andere abstrakte Klasse erweitert, ist es
   nun möglich, abstrakte Methoden zu überschreiben.
  
  
  
 
  Sodium ist nun eine Standarderweiterung
  
   Die moderne kryptographische Bibliothek Sodium ist nun eine
   Kern-Erweiterung von PHP.
  
  
   Eine vollständige Funktionsreferenz befindet sich im Kapitel
   Sodium.
  
  
 
  Passwort-Hashing mit Argon2
  
   Die Passwort-Hashing-API wurde um
   Argon2 erweitert. Es stehen die folgenden Konstanten zur Verfügung:
  
  
  
 
  Erweiterte Zeichenketten-Typen für PDO
  
   Der Zeichenketten-Typ von PDO wurde erweitert, um nationale Zeichensätze
   bei der Emulation vorbereiteter Anweisungen (Prepared Statements) zu
   unterstützen. Dafür wurden folgende Konstanten hinzugefügt:
  
  
  
   Diese Konstanten können verwendet werden, indem sie durch bitweises
   OR mit PDO::PARAM_STR verkettet
   werden:
  
  
  
 
  Zusätzliche Debugging-Informationen bei der Emulation vorbereiteter Anweisungen in PDO
  
   Die Methode PDOStatement::debugDumpParams() wurde
   aktualisiert, und enthält nun auch die an die DB gesendete SQL-Anweisung,
   wobei die vollständige, unbearbeitete Anweisung (einschließlich der durch
   ihre zugehörigen Werte ersetzten Platzhalter) angezeigt wird. Dies wurde
   hinzugefügt, um die Fehlersuche bei emulierten vorbereiteten Anweisungen zu
   erleichtern (und ist daher nur verfügbar, wenn die Emulation vorbereiteter
   Anweisungen aktiviert ist).
  
  
 
  Unterstützung für erweiterte Operationen in LDAP
  
   Die Erweiterung LDAP wurde um die Unterstützung für EXOP erweitert. Dafür
   wurden folgende Funktionen und Konstanten hinzugefügt:
  
  
  
 
  Ergänzung der Erweiterung Sockets um Adressinformationen
  
   Die Erweiterung Sockets bietet nun die Möglichkeit, Adressinformationen
   abzurufen, eine Verbindung zu ihnen herzustellen, an sie zu binden und
   Informationen darüber abzurufen. Dafür wurden die folgenden vier Funktionen
   hinzugefügt:
  
  
  
 
  Erweiterung des Parametertyps
  
   Die Parametertypen können bei einer überschriebenen Methode und bei der
   Implementierung einer Schnittstelle nun weggelassen werden. Da die
   Parametertypen kontravariant sind, wird das Liskovsche Substitutionsprinzip
   (LSP) dabei nicht verletzt.
  
  
  
 
  Nachgestelltes Komma bei gruppierten Namensräumen erlaubt
  
   Die in PHP 7.0 eingeführte Syntax für Gruppen erlaubt nun ein
   abschließendes Komma.
  
  
  
 
 
  Unterstützung der Byte-Reihenfolge in pack() und unpack()
  
   Die Funktionen pack() und unpack()
   unterstützen Floats und Doubles nun sowohl im Format Little-Endian als auch
   im Format Big-Endian.
  
  
 
  Verbesserungen bei der Erweiterung EXIF
  
   Die Erweiterung EXIF wurde aktualisiert und unterstützt nun mehr Formate.
   Das bedeutet, dass deren formatspezifische Tags bei der Analyse von Bildern
   mit der Funktion exif_read_data() nun korrekt übersetzt
   werden. Die folgenden neuen Formate werden nun unterstützt:
  
  
   - 
    
     Samsung
    
   
- 
    
     DJI
    
   
- 
    
     Panasonic
    
   
- 
    
     Sony
    
   
- 
    
     Pentax
    
   
- 
    
     Minolta
    
   
- 
    
     Sigma/Foveon
    
   
- 
    
     AGFA
    
   
- 
    
     Kyocera
    
   
- 
    
     Ricoh
    
   
- 
    
     Epson
    
   
   Die EXIF-Funktionen exif_read_data() und
   exif_thumbnail() unterstützen nun die Übergabe eines
   Streams als ihren ersten Parameter.
  
  
 
  Neue Features in PCRE
  
   - 
    
     Der Modifikator Jwurde hnzugefügt, um PCRE_DUPNAMES
     setzen zu können.
 
 
  SQLite3 ermöglicht das Schreiben von BLOBs
  
   Mit der Methode SQLite3::openBlob() können nun
   BLOB-Felder im schreibenden Modus geöffnet werden. Zuvor wurde nur der
   lesende Modus unterstützt.
  
  
 
  Oracle OCI8 Transparent Application Failover Callbacks
  
   Die Unterstützung für
   Oracle Database Transparent Application Failover (TAF) Callbacks
   wurde hinzugefügt. TAF ermöglicht es PHP-OCI8-Anwendungen, die Verbindung
   zu einer vorkonfigurierten Datenbank automatisch wiederherzustellen, wenn
   sie unterbrochen wird. Mit TAF-Callbacks kann die Wiederherstellung der
   Verbindung während des Failovers von der PHP-Anwendung aus überwacht und
   gesteuert werden.
  
  
 
  Verbesserungen bei der Erweiterung ZIP
  
   Die Unterstützung für das Lesen und Schreiben verschlüsselter Archive wurde
   hinzugefügt (erfordert libzip 1.2.0).
  
  
   Die Klasse ZipArchive implementiert nun die
   Schnittstelle Countable.
  
  
   Der zip://-Stream akzeptiert nun die Kontextoption
   'password'.