您的位置 首页 php

「详解」从0开始构建一个属于你自己的PHP框架(上)

「详解」从0开始构建一个属于你自己的PHP框架(上)

(上)

因为这次发表的内容比较多比较长,为方便大家阅读;我已分成三篇发文,大家要是有觉得有价值、感兴趣可以关注此账号或者加入【PHP学习特邀群】获取更多干货学习。

废话少说,开怼

忘了一点,就是12.2MB源码我已经压缩打包好了加群你就可以下载,群是开放的大家都可以加

目录

(上)

  • 如何构建一个自己的 PHP框架

  • 框架目录一览

  • 框架模块说明:

  • 入口文件

  • 自加载模块

  • 错误和异常模块

  • 配置文件模块

(中)

  • 输入和输出

  • 路由模块

  • 传统的MVC模式提倡为MCL模式

  • 使用Vue作为视图

  • 数据库 对象关系映射

  • 服务容器模块

(下)

  • Nosql 模块

  • 接口文档生成和接口模拟模块

  • 单元测试模块

  • Git钩子配置

  • 辅助脚本

  • 如何使用?

如何构建一个自己的PHP框架?

首先我们为什么要构建一个自己的PHP框架?

可能绝大多数的人都会说“网上已经游那么多的框架了,还造什么轮子?”。

那怎样才能构建一个自己的PHP框架呢?

我们往下看

「详解」从0开始构建一个属于你自己的PHP框架(上)

.

除此之外我们还需要

  1. 单元测试

  2. nosql支持

  3. 接口文档支持

  4. 一些辅助脚本等

最终我的框架目录如下:

框架目录一览


「详解」从0开始构建一个属于你自己的PHP框架(上)

「详解」从0开始构建一个属于你自己的PHP框架(上)

.

框架模块说明:


入口文件


定义一个统一的入口文件,对外提供统一的访问文件。对外隐藏了内部的复杂性想。

「详解」从0开始构建一个属于你自己的PHP框架(上)

.

[ file : public/index.php ]

自加载模块


使用【spl_autoload_register】函数注册自加载函数到【__autoload】队列中,配合使用命名空间,当使用一个类的时候可以自动载入【(require)】类文件。注册完成自加载逻辑后,我们就可以使用use和配合命名空间申明对某个类文件的依赖。

[ file: framework/Load.php ]

错误和异常模块


脚本运行期间:

  • 错误:

通过函数【set_error_handler】注册用户自定义错误处理方法,但是【set_error_handler】不能处理以下级别错误,

E_ERROR

E_PARSE

E_CORE_ERROR

E_CORE_WARNING

E_COMPILE_ERROR

E_COMPILE_WARNING

和在调用【set_error_handler() 】函数所在文件中产生的大多数

E_STRICT

所以我们需要使用【register_shutdown_function】配合【error_get_last】获取脚本终止执行的最后错误,这是为了对于不同错误级别和致命错误进行自定义处理。

[ file: framework/hanles/ErrorHandle.php ]

  • 异常:

通过函数【set_exception_handler】注册未捕获异常处理方法,目的在于捕获漏网的异常。

[ file: framework/hanles/ExceptionHandle.php ]

配置文件模块


加载框架自定义和用户自定义的配置文件。

[ file: framework/hanles/ConfigHandle.php ]

完整内容请关注 [详解]从0开始构建一个属于你自己的PHP框.架(中) ——(下)以及【PHP特邀学习群】

.

文章来源:智云一二三科技

文章标题:「详解」从0开始构建一个属于你自己的PHP框架(上)

文章地址:https://www.zhihuclub.com/152924.shtml

关于作者: 智云科技

热门文章

评论已关闭

2条评论

  1. Excellent blog here! Also your website loads up
    fast! What host are you using? Can I get your affiliate link to your host?

    I wish my web site loaded up as fast as yours lol

  2. To evaluate the differences between the means of endometrial diameters in the intervention and control groups, an analysis of covariance with the adjustment of baseline scores was used

网站地图