Heim > Schlagzeilen > Hauptteil

PHP 7.4.0 wurde gerade veröffentlicht! Werfen wir einen Blick auf die neuen Funktionen

藏色散人
Freigeben: 2019-12-07 18:02:21
nach vorne
5360 Leute haben es durchsucht

PHP 7.4.0 wird veröffentlicht. Diese Version markiert das vierte Feature-Update der PHP 7-Serie.

PHP 7.4.0 bringt viele Verbesserungen und einige neue Funktionen mit sich, darunter:

1.Typisierte EigenschaftenTypattribute

Klassenattribute unterstützen jetzt Typdeklarationen. Das folgende Beispiel erzwingt, dass $User-> nur int-Werte zugewiesen werden, und $User->

<?php
class User {
    public int $id;
    public string $name;
}
?>
Nach dem Login kopieren

2.PfeilfunktionenPfeilfunktionen

Pfeilfunktionen bieten eine Möglichkeit, implizite By-Value-Funktionen in Kurzform zu definieren Syntax für domänengebundene Funktionen.

<?php
$factor = 10;
$nums = array_map(fn($n) => $n * $factor, [1, 2, 3, 4]);
// $nums = array(10, 20, 30, 40);
?>
Nach dem Login kopieren

Abschlüsse können äußerst hilfreich sein, wenn sie an Funktionen wie array_map oder array_filter übergeben werden.

// A collection of Post objects $posts = [/* … */];
$ids = array_map(fn($post) => $post->id, $posts);
Nach dem Login kopieren

3.Begrenzte Rückgabetyp-Kovarianz und Argumenttyp-KontravarianzBegrenzte Rückgabetyp-Kovarianz und Parametertyp-Kontravarianz

Vollständig Kovarianz-/Kontravarianzunterstützung wird nur bei Verwendung von Autoloading bereitgestellt. Innerhalb einer einzelnen Datei können nur nichtzyklische Typreferenzen verwendet werden, da alle Klassen verfügbar sein müssen, bevor sie referenziert werden.

<?php
class A {}
class B extends A {}
class Producer {
    public function method(): A {}
}
class ChildProducer extends Producer {
    public function method(): B {}
}
?>
Nach dem Login kopieren

4.Innere Arrays entpackenInterne Arrays packen

<?php
$parts = [&#39;apple&#39;, &#39;pear&#39;];
$fruits = [&#39;banana&#39;, &#39;orange&#39;, ...$parts, &#39;watermelon&#39;];
// [&#39;banana&#39;, &#39;orange&#39;, &#39;apple&#39;, &#39;pear&#39;, &#39;watermelon&#39;];
?>
Nach dem Login kopieren

5.Numerisches Literal TrennzeichenNumerisches Literaltrennzeichen

Numerische Literale können Unterstriche zwischen Zahlen enthalten.

<?php
6.674_083e-11; // float
299_792_458;   // decimal
0xCAFE_F00D;   // hexadecimal
0b0101_1111;   // binary
?>
Nach dem Login kopieren

6.Schwache ReferenzenSchwache Referenzen

Schwache Referenzen ermöglichen es Programmierern, Referenzen auf Objekte beizubehalten, ohne dass dies verhindert wird Objekt vor der Zerstörung.

7.Ausnahmen von __toString() zulassenAuslösen von Ausnahmen von __toString() zulassen

Jetzt Ausnahmen zulassen von __toString() __toString() löst eine Ausnahme aus, die zuvor zu einem schwerwiegenden Fehler führte. Vorhandene behebbare schwerwiegende Fehler bei der String-Konvertierung wurden in Fehlerausnahmen umgewandelt.

8.Opcache-VorladenOpcache-Vorladen

Unterstützung für das Opcache-Vorladen hinzugefügt.

Darüber hinaus gibt es einige veraltete Elemente und einige Erweiterungen wurden aus dem Kern entfernt. Einzelheiten finden Sie unter:

https://www.php.net

https: //www.php.net/manual/zh/migration74.new-features.php

Verwandte Etiketten:
php
Quelle:oschina.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!