首頁 >後端開發 >php教程 >PHP延遲靜態綁定範例分享

PHP延遲靜態綁定範例分享

高洛峰
高洛峰原創
2016-12-26 16:18:351109瀏覽

沒怎麼用過這個新特性,其實也不算新啦,試試看吧,現在靜態類別的繼承很方便了

<?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

更多PHP延遲靜態綁定範例分享相關文章請關注PHP中文網!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn