Was ist die Verwendung von PHP-Eigenschaften?

藏色散人
Freigeben: 2023-03-09 18:40:01
Original
1869 Leute haben es durchsucht

php trait ist eine Code-Wiederverwendungstechnologie, die einen flexiblen Code-Wiederverwendungsmechanismus für die einzelne Vererbungsbeschränkung von PHP bereitstellt. Die Verwendungssyntax lautet wie folgt: „trait ezcReflectionReturnInfo {function getReturnType() {/*1*/}..}“.

Was ist die Verwendung von PHP-Eigenschaften?

Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP-Version 7.1, DELL G3-Computer

1. Was ist Trait in PHP?

Es sieht aus wie eine Klasse und eine Schnittstelle, ist es aber tatsächlich Es ist kein Merkmal erkennbar. Erstellen Sie eine Teilimplementierung einer Klasse, die in eine oder mehrere vorhandene PHP-Klassen eingefügt werden kann. Sie hat zwei Funktionen: anzugeben, was die Klasse tun kann, und eine modulare Implementierung bereitzustellen. Trait ist eine Code-Wiederverwendungstechnologie, die einen flexiblen Code-Wiederverwendungsmechanismus für die Einzelvererbungsbeschränkung von PHP bietet.

2. PHP-Versionsanforderungen:

  PHP5.4 begann mit der Einführung von Merkmalen, deren Zweck darin besteht, Codeduplizierung zu reduzieren und die Wiederverwendbarkeit von Code zu erhöhen.

3. Szenarien zur Verwendung von Merkmalen:

Stellen Sie sich eine Situation wie diese vor, wenn eine Methode in vielen Klassen verwendet werden muss.

Der übliche Weg, damit umzugehen, besteht darin, eine Basisklasse zu schreiben, diese Methode in der Basisklasse zu implementieren und dann alle Klassen diese Basisklasse zu erben.

 Das ist ein Weg, damit umzugehen, aber es ist nicht der beste Weg, damit umzugehen. Vererbung kommt meist dann zum Einsatz, wenn mehrere Klassen große Ähnlichkeiten aufweisen. Beispielsweise sind Personen eine Basisklasse, und Studenten, Arbeiter usw. erben die Basisklasse „Menschen“, um sie zu erweitern.

 Daraus ergibt sich die Rolle des Merkmals, das in mehreren Klassen verwendet werden kann.

4. So verwenden Sie Merkmale:

Beispiel 1

<?php
trait ezcReflectionReturnInfo {
    function getReturnType() { /*1*/ }
    function getReturnDescription() { /*2*/ }
}
 
class ezcReflectionMethod extends ReflectionMethod {
    use ezcReflectionReturnInfo;
    /* ... */
}
 
class ezcReflectionFunction extends ReflectionFunction {
    use ezcReflectionReturnInfo;
    /* ... */
}
?>
Nach dem Login kopieren

1. Deklarieren Sie zuerst ein Merkmal;

2.

Ist es nicht sehr einfach (manuelle Flucht)? Zu beachten ist die Priorität der Merkmale.

5. Merkmalspriorität

  (Klopfen Sie an die Tafel) Von der Basisklasse geerbte Mitglieder werden durch vom Merkmal eingefügte Mitglieder überschrieben. Die Rangfolge besteht darin, dass Mitglieder der aktuellen Klasse die Methoden des Merkmals überschreiben und das Merkmal die geerbten Methoden überschreibt.

Priorität: eigene Methode > Trait-Methode > geerbte Methode (so sieht es aus.)

Schauen Sie sich das Beispiel an

<?php
trait HelloWorld {
    public function sayHello() {
        echo &#39;Hello World!&#39;;
    }
}
class TheWorldIsNotEnough {
    use HelloWorld;
    public function sayHello() {
        echo &#39;Hello Universe!&#39;;
    }
}
$o = new TheWorldIsNotEnough();
$o->sayHello();//输出是 Hello Universe!
?>
Nach dem Login kopieren

Eine weitere zu beachtende Sache ist: die Verwendung mehrerer Merkmale.

<?php
trait Hello {
    public function sayHello() {
        echo &#39;Hello &#39;;
    }
}
 
trait World {
    public function sayWorld() {
        echo &#39;World&#39;;
    }
}
 
class MyHelloWorld {
    use Hello, World;
    public function sayExclamationMark() {
        echo &#39;!&#39;;
    }
}
 
$o = new MyHelloWorld();
$o->sayHello();
$o->sayWorld();
$o->sayExclamationMark();
?>
Nach dem Login kopieren

Zusammenfassung: Trait ist eine Code-Wiederverwendungstechnologie, die einen flexiblen Code-Wiederverwendungsmechanismus für die Einzelvererbungsbeschränkung von PHP bietet.

Empfohlenes Lernen: „

PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWas ist die Verwendung von PHP-Eigenschaften?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
php
Quelle:php.cn
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