PHP框架编写和应用知识点,构建一个基础的PHP框架知识点总结

构建一个自己的框架是很有必要的:

1、可以让我们巩固一些基础知识点

2、可以增进我们对项目的整个架构理解

3、可以让我们了解框架的各部分实现原理和逻辑

4、可以让我们更好的去学习和使用其他框架

一:首先了解一个简单的mvc框架的运行逻辑

-->发起http请求

-->所有的请求都重定向到入口文件

-->进行路由解析获得我们需要请求的控制器和动作

-->创建对应的实例对象并调用相应动作

-->从数据库模型中取得需要的数据

-->返回请求数据、渲染相应视图。

二:构建框架

1、规划基础的项目目录

moral 根目录

app 存在项目代码

controller 存放控制器

model 存放数据库模型类

views 存放视图文件

core 存放框架核心代码

common 存放公共函数库

config 存放项目配置文件

lib 存放框架核心类

mortal.php 框架核心基类

index.php 入口文件

2、入口文件我们需要干的事情

1、定义基础常量,例如:define('ROOT',dirname(__FILE__));

2、加载公共函数库

3、启动框架

3、mortal.php核心基类需要我们实现的

1、启动框架的方法 run

2、类的自动加载方法 load

(知识点:spl_autoload_register 实例一个不存在的类时触发)

3、向视图传值的方法 assign

(知识点:extract 分割数组为变量)

4、渲染视图的方法 display

4、lib下需要实现的框架核心类

1、路由的解析类 Route (知识点:$_SERVER )

2、日志类(实现不同的存储驱动,如存文件、存数据库等) Log

(文件驱动知识点:file_put_content函数)

3、数据库操作类 Model(可以直接继承\PDO)

4、配置类 Config

5、创建控制器、视图、数据库模型测试基础框架

三:优化扩展框架

1、安装composer优化扩展框架

2、根目录新建composer.json 文件,并编写内容,例如:

{

"name":"augus/motal",

"description":"framework",

"type":"framework",

"keywords":[

"php",

"framework"

],

"require":{

"php": ">=5.4.0",

"catfan/medoo": "*"

},

"autoload": {

"files": ["core/function.php"],#自动加载文件不是类

"psr-4": {

# 按照psr-4自动加载自己的类

"命名空间": "路径"

},

"classmap": {#加载根目录所有的类文件

"./"

}

}

}

第一次命令行执行 composer install

之后只需要 composer update

更多的composer知识内容,参考官方文档。

3、在项目中引入composer加入的扩展。

四:基础扩展推荐

数据库:catfan/medoo

模版引擎: twig/twig

错误诊断组件: filp/whoops

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值