//单入口文件index.php
2. [代码]框架实现核心代码
db = new \App\Lib\db; //实例化mysql,因为考虑到web中,基本都会有CURD的操作,所以在框架开始的时候就把mysql的库实例化出来,后面就直接用就是了,当然要在后面按需加载也是可以的哟 $this->load = new \App\Load; //实例一个工具类吧,后面在Controller里需要加载Model,Module等等时会用到 } public function view($view){ //在Controller里使用的渲染视图时用到的 $this->view = ucfirst($view); return self::$instance; } public function data($data){ // 与上文中有view方法配合使用,传递array变量到视图 extract($data); require(__DIR__.'/View/'.$this->view.'.view.php'); } public static function instance(){ //取得Controller的实例instance return self::$instance; } } class Model{ public function __get($key){ return \App\Controller::instance()->$key; } //__get魔术方法,比如在Model里面调用db的时候,就会通过这里取得在Controller已经实例好的那个mysql对象哟,不用再重复实例化了; } //===========================================================================================================// class Load{ //相关加载的方法,这里没有做自动加载处理,如果有好的建议请讨论交流哟 public function model($model){ require(__DIR__.'/Model/'.ucfirst($model).'.model.php'); } public function cache($cache){ require(__DIR__.'/Cache/'.ucfirst($cache).'.cache.php'); } public function module($module){ require(__DIR__.'/Module/'.ucfirst($module).'.module.php'); } public function extend($extend){ require(__DIR__.'/Extend/'.ucfirst($extend).'.extend.php'); } }
立即学习“PHP免费学习笔记(深入)”;
UQ云商B2B2C系统下载UQCMS云商是一款B2B2C电子商务软件 ,非常适合初创的创业者,个人及中小型企业。程序采用PHP+MYSQL,模板采用smarty模板,二次开发,简单方便,无需学习其他框架就可以自行模板设计。永久免费使用,操作简单,安全稳定。支持PC+WAP+微信三种浏览方式,支持微信公众号。
3. [代码]Home.controller.php
load->model('home'); //加载home模块 $model = new \App\Model\Home; //实例化 $model->showHomeModel(); //调用 // \App\Model\Home::showHomeModel(); 也可以这样调用,但是会有小小的区别,会在最后说明 $this->view('home')->data(array()); } public static function test(){ echo 'this is a test'; } }
立即学习“PHP免费学习笔记(深入)”;
4. [代码]Home.model.php
namespace App\Model; //申明App空间下的Model子空间 class Home extends \App\Model{ //继承父层App空间下的Model类 public function showHomeModel(){ echo $this->db->query('use $this->db in home model '); echo 'this is home model function '; } }
立即学习“PHP免费学习笔记(深入)”;
5. [代码]Model模块调用的小小区别说明
showHomeModel(); //在这里申明了要new一个Home.Model的对象实例,那么则会调用Home.Model继承的父类中的db实例, //那么则就是App空间下的Model类的实例 //那么为会么会有这样的区别呢,是不是与static关键字有关呢, //暂时还没有想得好明白,如果大家有什么建议,请分享出来哟;
0
0
PHP Framework|PHP框架的简单实现|使用namepsace|单列模式运用
本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门AI工具
相关专题
本专题整理了1688阿里巴巴批发进货平台的最新入口地址与在线采购指南,帮助用户快速找到官方网站入口,了解如何进行批发采购、货源选择以及厂家直销等功能,提升采购效率与平台使用体验。
50
2026.02.06
本专题汇总了快手网页版的最新入口地址和电脑版使用方法,详细提供快手官网直接访问链接、网页端操作教程,以及如何无需下载安装直接观看短视频的方式,帮助用户轻松浏览和观看快手短视频内容。
8
2026.02.06
本专题深入讲解 C# 中多线程与异步编程的核心概念与实战技巧,包括线程池管理、Task 类的使用、async/await 异步编程模式、并发控制与线程同步、死锁与竞态条件的解决方案。通过实际项目,帮助开发者掌握 如何在 C# 中构建高并发、低延迟的异步系统,提升应用性能和响应速度。
7
2026.02.06
本专题系统讲解 Python 微服务架构设计与 FastAPI 框架应用,涵盖 FastAPI 的快速开发、路由与依赖注入、数据模型验证、API 文档自动生成、OAuth2 与 JWT 身份验证、异步支持、部署与扩展等。通过实际案例,帮助学习者掌握 使用 FastAPI 构建高效、可扩展的微服务应用,提高服务响应速度与系统可维护性。
4
2026.02.06
本专题深入讲解 JavaScript 异步编程与事件驱动架构,涵盖 Promise、async/await、事件循环机制、回调函数、任务队列与微任务队列、以及如何设计高效的异步应用架构。通过多个实际示例,帮助开发者掌握 如何处理复杂异步操作,并利用事件驱动设计模式构建高效、响应式应用。
4
2026.02.06
热门下载
相关下载
精品课程






