网站首页 语言 会计 电脑 医学 资格证 职场 文艺体育 范文
当前位置:书香门第 > 计算机 > php语言

PHP延迟静态绑定示例分享

栏目: php语言 / 发布于: / 人气:2.41W

PHP5.3中,给类加入了关键词static,用于实现延迟静态绑定(late static binding),那么我们来看看一个示例来好好学习下。

PHP延迟静态绑定示例分享

没怎么用过这个新特性,其实也不算新啦,试试吧,现在静态类的继承很方便了

33

<?php

class A {

protected static $def = '123456';

public static function test() {

echo get_class(new static);

}

public static function test2() {

echo static::$def;

}

}

class B extends A {

protected static $def = '456789';

}

class C extends A {

protected static $def = 'abcdef';

}

echo B::test();

echo '<br>';

echo C::test();

echo '<br>';

echo B::test2();

echo '<br>';

echo C::test2();

echo '<br>';

echo A::test();

echo '<br>';

echo A::test2();

echo '<br>';

// 输出结果

B

C

456789

abcdef

A

123456