在php中,_initialize()方法相当于php5中的_construct()函数
其主要用于将所有公用的东西在此函数里声明!
具体应用:
class Action extends MyTpl{
private $timer;
/* 这是一个主运行方法,用户所有的访问都是通过这个方法开始运行的
* 不需要参数,没有返回值,通过这个方法加载用户的每个执行动作
*/
function run(){
$this->timer=new Timer();
//如果声明了_initialize()方法则去调用这个方法,这样用户的每个动作都通过这个方法,可以用于做权限
if(method_exists($this, '_initialize')){
$this->_initialize();
}
$act=isset($_GET["a"])?$_GET["a"]:"index";
//调用用户访问的方法,例如:admin.php?m=user&a=add去访问user模块中的add方法
if(method_exists($this,$act)){
eval('$this->'.$act.'();'); //如果$act为add,相当于$this->add();
}else{
echo '没有这个动作!';
}
}