Heim > Backend-Entwicklung > PHP-Tutorial > Der Unterschied zwischen static und self in PHP

Der Unterschied zwischen static und self in PHP

青灯夜游
Freigeben: 2023-04-08 14:02:01
nach vorne
2622 Leute haben es durchsucht

Der Unterschied zwischen static und self in PHP

Ein statischer Verweis auf die aktuelle Klasse unter Verwendung von self:: oder __CLASS__, abhängig von der Klasse, in der die aktuelle Methode definiert ist:

Die Verwendung von static:: ist nein länger aufgelöst Für die Klasse, in der die aktuelle Methode definiert ist, wird sie während der tatsächlichen Laufzeit berechnet. Es kann auch als „statische Bindung“ bezeichnet werden, da es für Aufrufe statischer Methoden verwendet werden kann (aber nicht darauf beschränkt ist).

Statische Bindung ist PHP 5.3.0. Eine zusätzliche Funktion wird verwendet, um statisch aufgerufene Klassen im Vererbungsbereich zu referenzieren in welche Klasse es geschrieben ist, und es ist diese Klasse, die tatsächlich aufgerufen wird

static stellt die verwendete Klasse dar, also die statische Klasse, die Sie in die übergeordnete Klasse schreiben, und dann wird von der Unterklasse überschrieben.

<?php
class Person
{
    public static function name()
    {
        echo "111";
        echo "<br />";
    }
    public static function callself()
    {
        self::name();
    }

    public static function callstatic()
    {
        static::name();
    }
}

class Man extends Person
{
    public static function name()
    {
        echo "222";
        echo "<br />";
    }
}

Man::callself();  // output: 111
Man::callstatic();  // output: 222
?>
Nach dem Login kopieren

Empfohlen:

PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonDer Unterschied zwischen static und self in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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