Heim Backend-Entwicklung PHP-Tutorial Eine kurze Einführung in die neuen Funktionen von PHP 7.0

Eine kurze Einführung in die neuen Funktionen von PHP 7.0

Jun 16, 2017 am 10:21 AM

In diesem Artikel werden hauptsächlich die neu hinzugefügten Funktionen von PHP 7.0 vorgestellt.

?? Ich habe dies an die erste Stelle gesetzt, weil ich es nützlich fand. Verwendung: $a = $_GET['a'] ?? 1; Es ist äquivalent zu:

??-Operator (NULL-Koaleszenzoperator)

Ich stelle dies an die erste Stelle, weil ich es nützlich finde. Verwendung:

$a = $_GET['a'] ?? 1; Es ist äquivalent zu:

<?php $a = isset($_GET[&#39;a&#39;]) ? $_GET[&#39;a&#39;] : 1; Wir wissen, dass der ternäre Operator wie folgt verwendet werden kann:

$a ?: 1 Aber das Basiert auf der Voraussetzung, dass $a definiert wurde. Der neue ??-Operator kann die Beurteilung vereinfachen.

1. Funktionsrückgabewerttypdeklaration

Das im offiziellen Dokument bereitgestellte Beispiel (Hinweis... Der Seitenlängenparameter Die Syntax ist nur in PHP 5.6 und höher verfügbar):

Der Schreibstil dieser Deklaration ähnelt in gewisser Weise dem von Swift:

func sayHello(personName: String) -> String { let greeting = "Hello, " + personName + "!" return greeting } Diese Funktion kann uns helfen, einige Probleme zu vermeiden, die durch die implizite Typkonvertierung von PHP verursacht werden. Wenn Sie vor der Definition einer Funktion über die erwarteten Ergebnisse nachdenken, können Sie unnötige Fehler vermeiden. </p> <p>Allerdings gibt es auch hier eine Funktion, die Aufmerksamkeit erfordert. PHP 7 fügt eine Declare-Direktive hinzu: strict_types, die den strikten Modus verwendet. </p> <p>Wenn Sie die Typdeklaration des Rückgabewerts verwenden und diese nicht im strikten Modus deklariert ist und der Rückgabewert nicht vom erwarteten Typ ist, wird PHP ihn trotzdem umwandeln. Wenn es sich jedoch um einen strikten Modus handelt, wird ein schwerwiegender Fehler vom Typ TypeError ausgelöst. </p> <p><strong>Force-Modus: </strong></p> <p><code><?php function foo($a) : int { return $a; } foo(1.0); Der obige Code kann normal ausgeführt werden und die foo-Funktion gibt int 1 ohne Fehler zurück.

Strikter Modus:

<?php declare(strict_types=1); function foo($a) : int { return $a; } foo(1.0);
Nach dem Login kopieren

PHP Schwerwiegender Fehler: Uncaught TypeError: Rückgabewert von foo() muss vom Typ Integer sein, Float zurückgegeben in test.php:6

Nach der Deklaration wird ein schwerwiegender Fehler ausgelöst.

Ist es dem strengen Modus von js ähnlich?

Skalare Typdeklaration

Die formale Parametertypdeklaration von Funktionen in PHP 7 kann jetzt skalar sein. In PHP 5 kann es sich nur um einen Klassennamen, eine Schnittstelle, ein Array oder eine aufrufbare Funktion handeln (PHP 5.4 kann eine Funktion sein, einschließlich anonymer Funktionen). Jetzt können Sie auch String, Int, Float und Bool verwenden.

Offizielles Beispiel:

<?php // Coercive mode function sumOfInts(int ...$ints) { return array_sum($ints); } var_dump(sumOfInts(2, &#39;3&#39;, 4.1));
Nach dem Login kopieren

Es ist zu beachten, dass das oben erwähnte Problem des strengen Modus dasselbe ist Hier gilt: Im erzwungenen Modus (Standard: erzwungene Typkonvertierung) werden Parameter, die nicht dem erwarteten Typ entsprechen, dennoch zur Typkonvertierung gezwungen, und im strikten Modus wird ein schwerwiegender TypeError-Fehler ausgelöst.

1.use Batch-Deklaration

In PHP 7 können mehrere Klassen oder Funktionen oder const in einem Satz deklariert werden:

<?php use some\namespace{ClassA, ClassB, ClassC as C}; use function some\namespace{fn_a, fn_b, fn_c}; use const some\namespace{ConstA, ConstB, ConstC}; 但还是要写出每个类或函数或 const 的名称(并没有像 Python 一样的 from some import * 的方法)。
Nach dem Login kopieren

Das zu beachtende Problem ist: Wenn Sie ein Framework verwenden, das auf Composer und PSR-4 basiert, kann diese Schreibmethode erfolgreich geladen werden Datei? Tatsächlich ist es möglich, dass die von Composer registrierte Autoloading-Methode den Speicherort gemäß dem Namensraum der Klasse durchsucht. Diese Schreibweise hat keine Auswirkung darauf.

Andere Funktionen

Einige andere Funktionen werde ich nicht einzeln vorstellen. Wenn Sie interessiert sind, können Sie dies überprüfen Offizielle Dokumentation: http://php.net/manual/en/migration70.new-features.php

Besprechen Sie kurz einige davon:

PHP 5.3 Start Mit anonymen Funktionen gibt es jetzt definierte konstante Arrays; Abschlüsse können über einen endgültigen Rückgabewert (oder besser gesagt Iteratoren) verfügen, oder Sie können einen anderen eingeben Generator (Generator-Delegierter) durch die neue Syntax von yield from. Zwei neue Merkmale von Generatoren (Rücklauf und Ertrag aus) können kombiniert werden. Sie können das spezifische Erscheinungsbild selbst testen. PHP 7 ist jetzt auf RC5 und die endgültige Version sollte bald verfügbar sein.

Das obige ist der detaillierte Inhalt vonEine kurze Einführung in die neuen Funktionen von PHP 7.0. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Was soll ich tun, wenn das Plug-in in php7.0 installiert ist, aber immer noch angezeigt wird, dass es nicht installiert ist? Was soll ich tun, wenn das Plug-in in php7.0 installiert ist, aber immer noch angezeigt wird, dass es nicht installiert ist? Apr 02, 2024 pm 07:39 PM

So beheben Sie das Problem, dass das Plugin in PHP 7.0 nicht installiert ist: Überprüfen Sie die Plugin-Konfiguration und aktivieren Sie das Plugin. Starten Sie PHP neu, um die Konfigurationsänderungen zu übernehmen. Überprüfen Sie die Berechtigungen der Plugin-Datei, um sicherzustellen, dass sie korrekt sind. Installieren Sie fehlende Abhängigkeiten, um sicherzustellen, dass das Plugin ordnungsgemäß funktioniert. Wenn alle anderen Schritte fehlschlagen, erstellen Sie PHP neu. Weitere mögliche Ursachen sind inkompatible Plugin-Versionen, das Laden der falschen Version oder PHP-Konfigurationsprobleme.

PHP 8.3 veröffentlicht: Neue Features auf einen Blick PHP 8.3 veröffentlicht: Neue Features auf einen Blick Nov 27, 2023 pm 12:52 PM

PHP8.3 veröffentlicht: Überblick über neue Funktionen Da sich die Technologie weiterentwickelt und sich ändern muss, werden Programmiersprachen ständig aktualisiert und verbessert. PHP ist eine in der Webentwicklung weit verbreitete Skriptsprache und wurde ständig verbessert, um Entwicklern leistungsfähigere und effizientere Tools zur Verfügung zu stellen. Die kürzlich veröffentlichte PHP 8.3-Version bringt viele lang erwartete neue Funktionen und Verbesserungen. Werfen wir einen Blick auf einen Überblick über diese neuen Funktionen. Initialisierung von Nicht-Null-Eigenschaften Wenn in früheren Versionen von PHP einer Klasseneigenschaft nicht explizit ein Wert zugewiesen wurde, ist es ihr Wert

Ein Leitfaden zum Erlernen der neuen Funktionen von PHP8 und zum Erwerb eines tiefgreifenden Verständnisses der neuesten Technologie Ein Leitfaden zum Erlernen der neuen Funktionen von PHP8 und zum Erwerb eines tiefgreifenden Verständnisses der neuesten Technologie Dec 23, 2023 pm 01:16 PM

Eine ausführliche Analyse der neuen Funktionen von PHP8, um Ihnen zu helfen, die neueste Technologie zu beherrschen. Im Laufe der Zeit hat sich die Programmiersprache PHP ständig weiterentwickelt und verbessert. Die kürzlich veröffentlichte PHP8-Version bietet Entwicklern viele spannende neue Funktionen und Verbesserungen, die unsere Entwicklungsarbeit komfortabler und effizienter machen. In diesem Artikel analysieren wir die neuen Funktionen von PHP8 eingehend und stellen spezifische Codebeispiele bereit, die Ihnen helfen, diese neuesten Technologien besser zu beherrschen. Der JIT-Compiler PHP8 führt die JIT-Kompilierung (Just-In-Time) ein

FAQ-Leitfaden zur PHP-Serverumgebung: Häufige Probleme schnell lösen FAQ-Leitfaden zur PHP-Serverumgebung: Häufige Probleme schnell lösen Apr 09, 2024 pm 01:33 PM

Zu den gängigen Lösungen für PHP-Serverumgebungen gehört die Sicherstellung, dass die richtige PHP-Version installiert ist und relevante Dateien in das Modulverzeichnis kopiert wurden. Deaktivieren Sie SELinux vorübergehend oder dauerhaft. Überprüfen und konfigurieren Sie PHP.ini, um sicherzustellen, dass die erforderlichen Erweiterungen hinzugefügt und korrekt eingerichtet wurden. Starten oder starten Sie den PHP-FPM-Dienst neu. Überprüfen Sie die DNS-Einstellungen auf Auflösungsprobleme.

Wie setze ich nach dem Neustart des Systems automatisch Berechtigungen von Unixsocket fest? Wie setze ich nach dem Neustart des Systems automatisch Berechtigungen von Unixsocket fest? Mar 31, 2025 pm 11:54 PM

So setzen Sie die Berechtigungen von Unixsocket automatisch nach dem Neustart des Systems. Jedes Mal, wenn das System neu startet, müssen wir den folgenden Befehl ausführen, um die Berechtigungen von Unixsocket: sudo ...

Was sind die neuen Funktionen von PHP8? Was sind die neuen Funktionen von PHP8? Sep 25, 2023 pm 01:34 PM

Zu den neuen Funktionen von PHP8 gehören JIT-Compiler, Typableitung, benannte Parameter, Union-Typen, Eigenschaften, Verbesserungen bei der Fehlerbehandlung, Unterstützung für asynchrone Programmierung, neue Standardbibliotheksfunktionen und anonyme Klassenerweiterungen. Detaillierte Einführung: 1. JIT-Compiler, PHP8 führt den JIT-Compiler ein, der eine wichtige Leistungsverbesserung darstellt. Der JIT-Compiler kann einige hochfrequente Ausführungscodes in Echtzeit kompilieren und optimieren, wodurch die Ausführungsgeschwindigkeit verbessert wird führt die Typinferenzfunktion ein, die es Entwicklern ermöglicht, beim Deklarieren von Variablen usw. automatisch den Typ von Variablen abzuleiten.

Warum tritt bei der Installation einer Erweiterung mit PECL in einer Docker -Umgebung ein Fehler auf? Wie löst ich es? Warum tritt bei der Installation einer Erweiterung mit PECL in einer Docker -Umgebung ein Fehler auf? Wie löst ich es? Apr 01, 2025 pm 03:06 PM

Ursachen und Lösungen für Fehler Bei der Verwendung von PECL zur Installation von Erweiterungen in der Docker -Umgebung, wenn die Docker -Umgebung verwendet wird, begegnen wir häufig auf einige Kopfschmerzen ...

Was ist besser, PHP8 oder PHP7? Was ist besser, PHP8 oder PHP7? Nov 16, 2023 pm 03:09 PM

Im Vergleich zu PHP7 bietet PHP8 einige Vorteile und Verbesserungen in Bezug auf Leistung, neue Funktionen und Syntaxverbesserungen, Typsystem, Fehlerbehandlung und Erweiterungen. Die Wahl der zu verwendenden Version hängt jedoch von Ihren spezifischen Anforderungen und Projektumständen ab. Detaillierte Einführung: 1. Leistungsverbesserung: PHP8 führt den Just-in-Time-Compiler (JIT) ein, der die Ausführungsgeschwindigkeit des Codes verbessern kann. 2. Neue Funktionen und Syntaxverbesserungen. PHP8 unterstützt die Deklaration benannter Parameter und optionaler Parameter. Durch die flexiblere Gestaltung von Funktionen werden anonyme Klassen, Typdeklarationen von Eigenschaften usw. eingeführt.

See all articles