0
PHP5.2以下的PHP 5.3的__callStatic()
有替代嗎?PHP的替代__callStatic <5.3?
我使用的機器只有PHP5.2,無法升級。有沒有另一種方法來模擬回調調用不存在的靜態方法,而不使用__callStatic()
?
我試圖模擬Laravel的Facade Design Pattern。
PHP5.2以下的PHP 5.3的__callStatic()
有替代嗎?PHP的替代__callStatic <5.3?
我使用的機器只有PHP5.2,無法升級。有沒有另一種方法來模擬回調調用不存在的靜態方法,而不使用__callStatic()
?
我試圖模擬Laravel的Facade Design Pattern。
你可以做這樣的事情:
public static function callStatic($method) {
$args = func_get_args();
array_shift($args);
return call_user_func(array(new self(), $method), $args);
}
爲了使您能夠訪問非靜態__call。
雖然公平,評論是正確的 - 你不應該使用PHP 5.2。
PHP 5.2不再支持:http://www.php.net/eol.php – feeela
tl; dr:不,這就是爲什麼它被添加到開始。 – Charles
不管怎樣,請注意@feeela所說的話:不支持PHP 5.2。它近三年來一直未得到支持。更重要的是,它在那個時候還沒有任何安全補丁,並且存在一些已知的安全問題。如果他們仍然允許他們的生產服務器上使用PHP 5.2,我會認爲系統管理員會疏忽大意。這真的是升級的時候了。 – Spudley