Tag-Archive for » bool «

PHP 7 kann skalare Typen deklarieren

phpmarginDie meistdiskutierte Funktion von PHP 7 ist sicher die Deklaration skalarer Typen. Bei einer gestern Abend durchgeführten Abstimmung erreichte die inzwischen fünfte Version des Vorschlags jetzt die nötige Zweidrittelmehrheit der beteiligten Entwickler. Also wird PHP 7 jetzt um die Typen Int, Float, String und Bool erweitert.

Allerdings muss die Verwendung einer strengen Überprüfung dieser Typen von den Nutzern explizit in jeder Datei über die Anweisung declare(strict_types=1) erzwungen werden. Das muss die erste Direktive in einer Programmdatei stehen und führt an anderen Stellen zu einer Fehlermeldung. Ohne diese Codezeile wird standardmäßig nur eine schwache Typenüberprüfung durchgeführt.

Wenn die neue Anweisung genutzt wird, müssen alle Funktionsaufrufe und Rückgabewerte in der Datei selbst und in darauf aufbauenden Erweiterungen und eingebaute PHP-Funktionen beim Parsen einer Typprüfung standhalten, sonst wird auch ein Fehler ausgegeben.

Im Gegensatz zu der schwachen Überprüfung, bei der die Werte noch in andere Typen umgewandelt werden können, gibt es unter der starken Überprüfung nur eine einzige erlaubte Umwandlung, nämlich die von Int zu Float.

PHP 7: Ausstieg einer Entwicklerin und die Folgen

phpmarginPer E-Mail mit dem Betreff „I quit – Ich höre auf“ hat Andrea Faulds ihren Rückzug aus der Entwicklung von PHP ankündigt.

In den letzten zwei Jahren hat Faulds an einigen grundlegenden Arbeiten an der nächsten Hauptversion der Programmiersprache mitgearbeitet und umfassende Änderungen für das kommende PHP 7 vorgeschlagen, deren Weiterentwicklung jetzt durch ihren Ausstieg ungewiss ist.

Das betrifft besonders das geplante und kontrovers diskutierte skalare Typensystem in PHP 7. Damit würde die Sprache um die Typen int, float, string und bool erweitert – und auch um eine strikte Überprüfung dieser Typen pro Datei, falls man das wünscht.

Faulds ist bisher auch für den Drei-Wege-Vergleichsoperator, den Void-Rückgabewert sowie die Unterstützung für sogenannte Big-Ints verantwortlich gewesen. Lassen wir uns überraschen, welche der Neuerungen den Weg in PHP 7 noch schaffen…