若将商业逻辑都写在 controller,会造成 controller 肥大而难以维护,基于SOLID原则,我们应该使用 Service 模式辅助 controller,将相关的商业逻辑封装在不同的 service,方便中大型专案的维护。

参考地址:https://oomusou.io/laravel/service/

Repository,Service,Presenter ,这时候 Model / Dao 只是数据库连接和关系映射,Repository 会辅助 Model 进一步封装,比如有 getPopularPosts() 之类,将注入到 Service 。Repository 处理数据库逻辑,Service 处理业务逻辑。Service 将注入到 Controller 层,Controller 层只处理 Http 相关逻辑,而视图相关由 Presenter 处理。
参考:https://learnku.com/laravel/t/7727/what-does-the-service-layer-in-mvc-mean

php正则获取字符串中的图像src地址

<?php $str = <<<str <img src="1.jpg"/> <p>123123</p> <span>3322</span> <img ...

阅读全文

php predis 操作类库扩展

需先安装php predis 类库 详细predis 命令参考 :http://www.koukousky.com/back/1644.html <?php /** * Predis缓存驱动 * 要求安装phpredis扩展:https...

阅读全文

php imagick 水印、缩略图 图像处理类

使用前需安装 ImageMagick 客户端和 php Imagick 扩展类库 可解决上传图片在ios 下翻转的问题。 使用方法 $imagick = new \lib_image_imagick(); $width = 2...

阅读全文

欢迎留言