最近因为工作跟生活的问题想了很多事情,一时半会没有头绪,有点凌乱。不过还是有值得庆幸的事情——我即将把mPHP核心框架的代码开放出来,跟大家交流学习。mPHP只是提供了一种PHP的mvc框架思路,具体的实现跟使用方式,还得各位自己调整,毕竟合适自己的,才是最好的。
下边先上代码/*
作者:moyancheng
创建时间:2012-03-01
最后更新时间:2014-01-11
*/
class mPHP {
private static $mPHP = 0;
public $controller;
private function __construct() {
$this->controller = new controller();
safe::safeGPC();
}
public function run() {
$this->controller->load();
}
public static function init() {
if( !self::$mPHP ) self::$mPHP = new mPHP();
return self::$mPHP;
}
}
先看mPHP类中的init()静态方法,该方法保证了mPHP类以单例模式运行,简单的理解,就是每次运行web程序mPHP都是唯一的。mPHP的初始化、运行方法如下:$mPHP = mPHP::init();//单例模式
$mPHP -> run();//运行
在进入单例模式的时候,同时会触发类的构造函数__construct(),构造函数做了两个操作:
1:初始化控制器类controller()
2:开启安全机制,分别过滤通过$_GET、$_POST、$_COOKIE传过来的值
最后通过mPHP的run方法,调用控制器类的加载函数load()。