<?php
class Base{
protected static $somevar = false;
public static function changeSomeVar(){
static::$somevar = true;
}
public static function checkVar(){
var_dump(static::$somevar);
}
}
class Child1 extends Base{
public static function setup(){
static::changeSomeVar();
}
}
class Child2 extends Base{
}
Child1::setup();
Child1::checkVar(); // true
Child2::checkVar(); // still true
?>
有沒有辦法有Child1
的$somevar
不同Child2
的$somevar
?PHP 5.3晚靜態綁定問題
(我知道你可以手動在每個子類中寫protected static $somevar = false;
,但這是有些違反直覺..)
「有沒有辦法讓Child1的$ somevar與Child2的$ somevar不同?」 ---這就是爲什麼開發對象。 – zerkms