Heim  >  Artikel  >  Backend-Entwicklung  >  PHP-verzögertes Teilen von statischen Bindungsbeispielen

PHP-verzögertes Teilen von statischen Bindungsbeispielen

高洛峰
高洛峰Original
2016-12-26 16:18:351083Durchsuche

Ich habe diese neue Funktion nicht oft verwendet, aber sie ist eigentlich nicht neu. Probieren Sie es aus, die Vererbung statischer Klassen ist jetzt sehr praktisch.

<?php
class A {
 protected static $def = &#39;123456&#39;;
 
 public static function test() {
  echo get_class(new static);
 }
 
 public static function test2() {
  echo static::$def;
 }
}
 
class B extends A {
 protected static $def = &#39;456789&#39;;
}
 
class C extends A {
 protected static $def = &#39;abcdef&#39;;
}
 
echo B::test();
echo &#39;<br>&#39;;
echo C::test();
echo &#39;<br>&#39;;
echo B::test2();
echo &#39;<br>&#39;;
echo C::test2();
echo &#39;<br>&#39;;
echo A::test();
echo &#39;<br>&#39;;
echo A::test2();
echo &#39;<br>&#39;;
// 输出结果
B
C
456789
abcdef
A
123456

Weitere Beispiele für verzögerte statische PHP-Bindung Um verwandte Artikel zu teilen, achten Sie bitte auf die chinesische PHP-Website!

Stellungnahme:
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