利用 Composer 组建一个 PHP 框架
前言
Laravel
框架虽然号称优雅,但层层的继承和trait
,函数跳转使得难以窥全一个完整的子类,源代码可读性极差;长时间书写业务代码,技术上到达了一个瓶颈期,很难再提升,遂产生了自造一个PHP框架的想法,希望通过开发框架的整个流程技术能有所进步。暂时先实现MVC等基本功能,有时间慢慢写,典型的自娱自乐项目,Github欢迎star。
思路
index.php
解析url,实例化对应的控制器,调用对应的方法处理请求;模板引擎使用blade
。
安装
git clone git@github.com:lxzan/Caster.git
composer install
sudo chmod -R 777 runtime
配置数据库用户名及密码,配置文件位于/config/db.json
路由
路由由
controller/method
的结构构成,默认路由为BaseController
,默认方法为index
。
模板引擎
模板引擎使用的是Blade, 点击超链接查看文档。
数据库
使用
Composer
的slim/pdo
包来管理MySQL,使用方法参考Github。
本作品采用《CC 协议》,转载必须注明作者和本文链接
能否配置是否需要数据库?
我启动后提示我pdo连接错误。
找到办法了,去掉index的pdo那一行就可以了。
@chenge 你没装PDO拓展吗?
@李曦赞 是没有mysql。
感觉你的代码很小巧,打算完整学习下,很不错。
代码很少,很容易看懂。谢谢分享。
大概几年前,我也有类似的想法,就是把url对应到类和方法,那个时候没有composer,所以后来就没有做出来。
我觉得这个框架有推广价值,可以搞个blog的demo。
@chenge 能功能较完整了可以考虑下哈,目前只实现了MVC以及自动加载,中间件、表单校验、分页、安全等方面还没开始写
@李曦赞 等你写完了中间件、表单校验、分页、安全等 发现。咦,怎么比 Laravel 写的可读性还差。?
@Will 说的好有道理
666,:+1:
为什么要组件框架 现在的框架够多了