php5.3以后增加了__callStatic方法, 当调用的静态方法不存在或权限不足时,会自动调用__callStatic方法。
具体使用的方法如下 :
class Func {
private static $con = false;
public static function write($txt) {
self::$con = $txt;
}
public static function read() {
return self::$con;
}
}
class Tool {
public static function __callStatic($func, $arguments) {
return call_user_func_array(['Func', $func], $arguments);
}
}
Tool::write('sadfasdfsdfasdfasdf');
var_dump(Tool::read());
var_dump(Func::read());
这里的Func类 提供静态方法;
而在Tool类中进行调用,这种模式运用恰当可以很好的组织代码。
运行结果: