MCPHP框架预告贴 ====我们老师说过,帖子只有名字长了才会火====
先是37期有人开发了框架,然后44期也有人开发了框架,我们45期怎么能没有呢?所以现在45期也有了,嗯,开始期待46期的。
开个玩笑,其实做框架在来兄弟连之前就有这想法,当时在用thinkphp框架,发现里面好多东西都用不到,就很想精简(很让自己蛋疼的强迫症,smarty 就这样被我阉割了)。无奈当时时间精力不够。来到兄弟连,前期的作业也没有时间,到了项目前,发现作业少了,时间也多了,而且也有必要性了,所以就抽时间做了这个框架。
这个框架目前的命名是mcphp,至于为什么叫这个名字,我也不知道,只是手里有mcphp.com的闲置域名,不想浪费,所以这里就用上了,真心希望能有兄弟姐妹帮想个好名字。
这个框架是在brophp基础上做的(brophp用来学习和了解框架真是一个好东西)。参考了thinkphp,参考了dolrphp,参考了moophp等等一些优秀的源码
一、引入thinkphp的编译机制。第一次运行的时候把核心需要加载的文件去掉空白和注释后合并到一个文件中,控制器和模型也都做了同样处理
二、改进配置文件,采用类似thinkphp的配置方式, 采用数组进行配置,在项目中可以用函数获取和修改
三、引入thinkphp的三大自动:自动验证 自动映射 自动完成
四、增加了表单令牌,防止从其他地方提交表单。
五、跨项目调用model,后台和前台操作相同的数据库而无需重复自定义model
六、去掉了查询的被动memcache缓存,因为这种缓存对于某些情况真的有些 鸡肋。特别是在访问大了及数据量大了以后,改为主动缓存,通过设置有效期,在有效期内无论如何更新也不重新查询,并且这样可以根据数据的重要性设置不同的有效期。
七、模版引擎采用了自己之前写的模版引擎,当时参照smarty编写的,可以说是smarty的精简版。
八、借用了dolrphp的一些效果 success error welcome等页面
还有一些杂七杂八的修改,不一一列出了,现在框架只是空想出来的,并没有进行任何项目的实际测试,里面的bug真不少,并且很多地方都没有优化到位,所以就不献丑了,等到第一个项目做完就发布公众版本。现在都是针对自己的,不少东西都还没有制作,但是主体部分是完成了,接下来可以用这个做自己的第一个项目,在这个项目中继续完善,等到发布的时候将会补充例如debug这些。
ps:到最后,发现这个真是一个大杂烩,真正属于自己原创的东西很少,都是这里取一点,那里取一点,最后拼接到一起,但是里面的结构等等都烙上了自己的印记,好多地方都是为了自己方便而作的。不过做完这个发现自己对于 mvc这个结构是真的理解了。到这里,自己积累的老本已经吃完了,下面差不多都是不怎么懂的了,要开始努力了。