Die PHP-Community freut sich sehr über die neue Version. Aber das bedeutet nicht, dass PHP in dieser Zeit stagniert hat. Sie haben in der Zwischenzeit so viele Dinge aktualisiert, aber PHP 7 ist eine völlig neue Version mit einigen aufregenden Funktionen.
Die Geschwindigkeit ist die erstaunliche Funktion, die PHP 7 in dieser Version mitbringt. Die Entwickler haben sehr hart daran gearbeitet, den PHP-Code zu refaktorieren, um den Speicherverbrauch zu reduzieren und die Leistung zu erhöhen, und das ist ihnen auch gelungen.
Wie wir wissen, gilt PHP als schwach typisierte Sprache. Das bedeutet im Wesentlichen, dass man in PHP keine Datentypen deklarieren muss. Variablen haben immer noch Datentypen, aber Sie können radikale Dinge tun, wie z.B. eine Zeichenkette zu einer Ganzzahl hinzufügen, ohne dass ein Fehler auftritt. Mit Hilfe von Typendeklarationen können Sie definieren, was geschehen soll, damit Sie die erwarteten Ergebnisse erhalten. Dies kann auch dazu beitragen, dass Ihr Code leichter zu lesen ist. Im Folgenden sehen wir uns einige spezifische Beispiele an
Hinweise zu Skalartypen
Mit PHP 7 haben wir nun Skalartypen hinzugefügt. Genauer gesagt: int, float, string und bool.
Durch die Hinzufügung von Skalartyp-Hinweisen und die Ermöglichung strenger Anforderungen hofft man, dass korrektere und selbstdokumentierende PHP-Programme geschrieben werden können. Es gibt Ihnen auch mehr Kontrolle über Ihren Code und kann den Code leichter lesbar machen.
Hier ist ein Beispiel mit non strict
function total(float $a, float $b) {
return $a + $b;
}
Ausgabe
total(2.8, "3.2");
// string "3.2" changed to float(3.2) no notice
//returns float(6)
Ausgabe mit Warnung
total(2, "1 week");
// int(2) changed to float(2.0) and string "1 week" changed to float(1.0) but you will get a "Notice: A non well formed numeric value encountered"
//returns float(3)
Wenn eine Typ-Deklarations-Unstimmigkeit auftritt, wird ein „Fatal Error“ mit strict mood on geworfen. Hier ist ein Beispiel
declare(strict_types=1);function total(float $a, float $b) {
return $a + $b;
}total(2, "1 week");
// Fatal error: Uncaught TypeError: Argument 2 passed to total() must be of the type float, string giventotal(2.5, 1);
// int(1) change to float(1.0)
//returns float(3.5)
Wie wir sehen, wird bei der Verwendung von strict mood „on“ die Warnung zu Error, was sehr hilfreich und strukturiert ist, um die gewünschte Ausgabe aus der Codebasis zu verstehen und zu erhalten.
Return Type Declarations
PHP 7 unterstützt auch Return Type Declarations, die alle die gleichen Typen wie Argumente unterstützen. Um den Rückgabetyp anzugeben, fügen wir einen Doppelpunkt und dann den Typ direkt vor der öffnenden geschweiften Klammer ein.
function total(float $a, float $b) : float {}
Neue Operatoren :
PHP 7 bringt uns auch einige neue Operatoren. Der erste, den wir uns ansehen werden, ist der Raumschiff-Operator. Der Raumschiff-Operator oder kombinierte Vergleichsoperator ist eine nette Ergänzung der Sprache und ergänzt die Größer-als- und Kleiner-als-Operatoren. like
$compare = 2 <=> 1
2 < 1? return -1
2 = 1? return 0
2 > 1? return 1
Null-Koaleszenz-Operator
Ein weiterer neuer Operator, der Null-Koaleszenz-Operator, ist quasi das sagenumwobene if-set-or. Er gibt den linken Operanden zurück, wenn er nicht NULL ist, andernfalls den rechten. wie
$name = $firstName ?? "Guest";
Vor 7.X war es wie
if (!empty($firstName)) $name = $firstName;
else $name = "Guest";
Was diesen Operator noch mächtiger macht, ist, dass man ihn stapeln kann! Diese Operation prüft jedes Element von links nach rechts und wenn sie eines findet, das nicht null ist, wird dieser Wert verwendet. wie
$name = $firstName ?? $username ?? $placeholder ?? "Guest";
Das macht Spaß, nicht wahr?
Wenn Sie bereit sind, mit PHP7 herumzuspielen, werfen Sie alle Änderungen in PHP 7. X