学习封装 MVC (2)

来源:互联网 发布:未来城网络黄金合法吗 编辑:程序博客网 时间:2024/06/15 18:25

一、加载控制器

      

        1.实例化核心文件

        2.定义当前的地址和文件

         3.判断当前控制器是否存在

         4.返回当前的控制器和方法名

static  public function run(){       $route= new \core\lib\route();       $ctrlClass=$route->ctrl;       $action=$route->action;       $ctrlfile=APP.'/ctrl/'.$ctrlClass .'Ctrl.php';       $cltrlClass='\\'.MODULE.'\ctrl\\'.$ctrlClass.'Ctrl';       //判断当前控制名是否存在       if(is_file($ctrlfile)){           include $ctrlfile;           $ctrl= new $cltrlClass();           $ctrl->$action();       }else{             throw new \Exception('找不服务器'.$ctrlClass);       }    }

二、加载视图

      1)视图赋值

         1.自定义 assign 函数

         2.返回当前名和值

 public $assign; public function assign($name,$value){      $this->assign[$name]=$value;    }
   

    2)视图显示

      1.自定义 display 函数

      2.判断当前页码是否存在

public function display($file){      //拼接路径        $file=APP.'/view/'.$file;        //判断是否当前路径下的文件        if(is_file($file)){            extract($this->assign);            include $file;        }else{            throw new \Exception('找不到视图文件'.$file);        }    }

三、加载模型

     1.利用PDO模式

     2.填写自己的用户名,密码,数据库名

class model extends \PDO{         public function __construct(){              $sdn='mysql:host=127.0.0.1;dbname=dbname';             $username='root';             $pwd='root';             try{                 parent::__construct($sdn,$username,$pwd);             }catch(\PDOException $e){                 var_dump($e->getMessage());//打印错误             }         }     }





0 0
原创粉丝点击