宝哥软件园

使用ORM用Composer构建自己的PHP框架

编辑:宝哥软件园 来源:互联网 时间:2021-09-09

回顾

经过前三篇文章的基本准备、路由和MVC设计,我们已经得到了一个具备相对完整的MVC架构的PHP微框架,但是还缺一个真正能用的框架:数据库封装。本文将讲述如何集成ORM Composer包。

这是本系列的最后一篇文章。接下来,我可能会以“让我们打开并打开Composer包”为标题分享一些经验和见解,这些内容将主要发布在本网站上。

主体

我们选择了Laravel的照明/数据库作为我们的ORM包。我试了几个著名的ORMs,发现Laravel的《雄辩者》很好用!让我们快乐ORM,开放开放!-D

在本系列教程中,每个Composer包都必须满足以下基本要求:

主要依靠Composer进行管理是尽可能简单的(例如,我们的超简单路由包)和尽可能新的,使用PHP的新特性

说到PHP的新特性,有一个题外话。PHP5.3引入了命名空间,这是PHP6中计划好的功能,所以PHP5.3在一定程度上其实就是PHP6,下一个PHP版本就是PHP7,即将发布。主要贡献者是著名的鸟哥@拉影响力。另外,这个站前面的记者(也就是我)刚刚发了一条微博的报道,鸟哥正在放大招数,在JIT上制作传说中的PHP7。我的大PHP的历史车轮不可阻挡!-P

安装照明/数据库

向composer.json添加一个必需项:

照亮/数据库' : '* '运行composer update并等待安装完成。

使用雄辩

将public/index.php修改为:

复制代码代码如下:服务器端编程语言(Professional Hypertext Preprocessor的缩写)

使用照明数据库胶囊管理器作为胶囊;

//自动加载自动加载

要求./vendor/autoload . PHP ';

//雄辩的ORM

$capsule=新Capsule;

$capsule-addConnection(必需)./config/database . PHP ');

$ capsule-BootEnglish();

//路由配置

要求./config/routes . PHP ';

添加config/database.php(注意替换数据库密码):

复制代码代码如下:服务器端编程语言(Professional Hypertext Preprocessor的缩写)

返回[

驱动程序'='mysql ',

主机'='localhost ',

数据库'='mffc ',

用户名'='root ',

密码'='密码',

字符集'='utf8 ',

排序规则'='utf8_general_ci ',

前缀“=”

];

修改模型/文章。

复制代码代码如下:服务器端编程语言(Professional Hypertext Preprocessor的缩写)

/**

*文章模型

*/

类文章扩展说明数据库雄辩模型

{

public $时间戳=false

}

无需更改控制器/HomeController.php.

刷新后,页面保持不变:

恭喜你!巧舌如簧成功使用!

雄辩的更多用法

雄辩是极其强大的,可以说是Laravel最特别、最有价值的部分。就像HomeController中调用的Article:first()一样,之前使用了十几行代码,但是现在什么都不需要做,只需要继承一个类。

有关雄辩的更多用法,请参见:雄辩的ORM中文文档

其他著名的ORM

还有许多著名的ORM和数据映射包,请参见:ORM和数据映射

ORM可以大幅度提高开发效率,而enhanced真的是神器!尽管web会话中的所有语言阵营都在不断引入新的所谓快速开发框架,但它们仍然越来越像Rails。雄辩几乎是表面上最像Rails的ORM,但无法和Rails相比。Ruby的超级面向对象特性没有被涵盖。《拉威尔》的作者泰勒奥特韦尔在接受采访时表示,雄辩是拉威尔最难的部分。调试的时候还发现文件mffc/vendor/light/database/light/database/eloquet/model . PHP有3000多行.

目前,构建一个可以使用的完整PHP框架的工作基本完成。接下来,我将继续改进MFFC框架,使其更加丰富和易于使用!

未来可能会有模板引擎、表单验证、邮件发送、权限系统管理、异步队列、视音频处理(录入:-D)等。请关注尚未诞生的Composer包系列文章。

感谢您的阅读和陪伴!再见!

更多资讯
游戏推荐
更多+