你不得不掌握的thinkphp5
thinkphp官网在去年的时候发布了tp的颠覆版本thinkphp5,tp5确实比之前的版本好用了很多,增加了很多的一些特性,它采用全新的架构思想,引入了更多的PHP新特性,优化了核心,减少了依赖,实现了真正的惰性加载,支持composer,并针对API开发做了大量的优化工作,包括路由、日志、异常、模型、数据库、模板引擎和验证等模块都已经重构,绝对是新项目的首选(无论是WEB还是API开发),大大的赞!
主要特性包括:
1、遵循PSR-2、PSR-4规范
2、支持Composer,拥有了它我们在实际的开发工作中确实方便了很多,爱死它了,别问我为什么,任性。
3、支持单元测试;
4、安全机制,详细的日志能帮你轻轻松松的做到问题定位
5、减少核心依赖,扩展更灵活、方便,支持命令行指令扩展;
6、出色的性能和REST支持、远程调试,更好的支持API开发;
7、惰性加载,这个较比3.2版本性能爆升
8、路由、配置和自动加载的缓存机制
不整虚的,接下来来些实际的常用用法吧
1、我们可以不需要通过配置虚拟域名的方式来访问我们的项目非常方便,只需要在入口文件中 (默认在public目录下) 执行 如下命令
php -S localhost:8181 router.php 就可以通过localhost:8181来访问我们的项目,8181是端口号,关于更高级的用法请看下文左下角的链接,哈哈
2、自动化模块部署
比如我们想增设系统中的某个模块,如:admin api等模块,这个时候我们只需要巧用build.php这个神器
在application目录下 创建build.php文件 然后新增如何内容
然后我们需要回到项目跟目录下 执行 php think build 就可以轻轻松松搞定自动化模块部署了
3、新的分页机制
tp5的分页真的很好用 比3.2.3的好用多了。用法如下
直接在model层调用paginate这个方法就能做到分页,paginate默认的是每页15条,当然你可以可以自行分配 ,可以在配置文件中分配,也可以这样分配paginate(你想要的参数)等
然后在模板中这样填充数据就可以做到完美分页了:
{$obj->render()} $obj是你在c 层获取数据的变量
关于分页更高级的用法 关于更高级的用法请看下文左下角的链接,哈哈
tp5的新用法很多很多,就不一一列举了,如果大家感兴趣可以看看我最新推出的新课程 《ThinkPHP5实战 - 仿百度糯米开发多商家电商平台》
里面的干货十足:
本课程是利用tp的颠覆版本(TP5)来开发的一套完美多用户电商平台,本课程从需求分析到代码实现带领大家完整的经历多用户电商系统的开发过程,本课程涉及如何根据案例的业务逻辑划分功能模块使用模块化的方式开发实现代码的高度复用性这样可以大大提高开发效率,降低维护成本, 项目分商家模块,主平台模块,前台模块3个大部分。系统中利用tp5的一些特性来开展工作,比如webserver神奇;验证码;自动化模块部署;命令机制;session机制,问题定位;问题调试等等,系统中还会讲解ajax综合应用包括图片异步上传 自动化排序等;百度地图应用封装;打造tp5的发送邮件服务;API开发、微信支付等功能。
需要的小伙伴赶紧加入课堂
《ThinkPHP5实战 - 仿百度糯米开发多商家电商平台》
作者: singwa
链接:http://www.imooc.com/article/16978
来源:慕课网
本文原创发布于慕课网 ,转载请注明出处,谢谢合作!
你不得不掌握的thinkphp5的更多相关文章
- EpiiAdmin 开源的php交互性管理后台框架, 让复杂的交互变得更简单!Phper快速搭建交互性平台的开发框架,基于Thinkphp5.1+Adminlte3.0+Require.js。
EpiiAdmin EpiiAdmin php开源交互性管理后台框架,基于Thinkphp5.1+Adminlte3.0+Require.js, 让复杂的交互变得更简单!Phper快速搭建交互性平台的 ...
- TODO:macOS上ThinkPHP5和Semantic-UI集成
TODO:macOS上ThinkPHP5和Semantic-UI集成 1. 全局安装 (on OSX via homebrew)Composer 是 homebrew-php 项目的一部分 2. 把X ...
- Java的多线程机制系列:不得不提的volatile及指令重排序(happen-before)
一.不得不提的volatile volatile是个很老的关键字,几乎伴随着JDK的诞生而诞生,我们都知道这个关键字,但又不太清楚什么时候会使用它:我们在JDK及开源框架中随处可见这个关键字,但并发专 ...
- ThinkPHP5 助手函数
对于ThinkPHP5.0以前的版本,助手函数全部是单字母函数,但到ThinkPHP5之后,使用如下函数来代替单字母函数: 最常用: /** * 实例化Model * @param string $n ...
- 高性能PHP框架thinkphp5.0.0 Beta发布-为API开发而设计
ThinkPHP V5.——为API开发而设计的高性能框架 ThinkPHP5..0版本是一个颠覆和重构版本,采用全新的架构思想,引入了很多的PHP新特性,优化了核心,减少了依赖,实现了真正的惰性加载 ...
- 吐槽THINKPHP5命令行
thinkphp,作为国内开源框架,一直在使用和学习. 但是实在忍不住想要吐槽一下他的开发文档,和 对初学者的不友好,建议刚接触MVC思想的人 还是尽量去使用其他框架当入门. 现在来吐槽一下think ...
- [转] 移动前端不得不了解的HTML5 head 头标签
HTML的头部内容特别多,有针对SEO的头部信息,也有针对移动设备的头部信息.而且各个浏览器内核以及各个国内浏览器厂商都有些自己的标签元 素,有很多差异性.移动端的工作已经越来越成为前端工作的重要内容 ...
- 【thinkphp5】【THINKCMG】标签部分开发(一)
最近打算开一个自己的CMS后台轮子,框架选择了thinkphp 5 (别问我为什么选择这个框架)然后想边开发边记录一下,方便自己方便他人 进入正题 1.数据库设计 一共三张表 post文章表这个就不贴 ...
- Html5_移动前端不得不了解的html5 head 头标签
移动前端不得不了解的html5 head 头标签 本文主要内容来自一丝的常用的 HTML 头部标签和百度FEX的HTML head 头标签. 移动端的工作已经越来越成为前端工作的重要内容,除了平常 ...
随机推荐
- java——最大堆 MaxHeap
使用数组来实现最大堆 堆是平衡二叉树 import Date_pacage.Array; public class MaxHeap<E extends Comparable <E>& ...
- my.时空_物价
1.时空 开区时间:(2017年) 7月5日新服名单:[双平台]首服-时空之隙 8月11日新服名单:[双平台]皓月千里 3.1级宝石(20180516) 光芒 46800 ↓0.3% 太阳 75753 ...
- python迭代器、生成器、列表推倒式
创建迭代器: iter( ): 创建迭代器 next( ): 返回迭代器的下一个element(元素) 实例题: >>> list = [1,2,3,4] >>> ...
- HTML6即将到来,你没有看错是HTML6
HTML6提案1:对视频对象的更多控制 我们可能永远不会解决与压缩编解码器的争斗,但我们可以与之配合.不同的压缩算法可能需要更多的工作来实现,但是它们提供竞争.能对展现在页面上的视频帧提供更多控制的方 ...
- 晶振电路的设计-AN2867学习
一 石英晶体的等效电路.带宽: FS~FA之间就是并联带宽,越窄稳定性越好.其中Fs.Fa为Lm/Rm/Cm电抗分别为0和无穷大时的谐振频率).Fp为工作频率(通过调整负载电容CL来达到中心频率) 起 ...
- jQuery中的事件和动画 以及视频展示效果实例
经过这几天学习jQuery中的事件和动画,对jQuery更深的认识,接下来先把视频展示效果的代码贴出来,最后把我在学习jQuery事件和动画之后总结的思维导图 <!doctype html> ...
- Murano Weekly Meeting 2015.09.08
Meeting time: 2015.September.8th 1:00~2:00 Chairperson: Serg Melikyan, PTL from Mirantis Meeting su ...
- HDU 5532——Almost Sorted Array——————【技巧】
Almost Sorted Array Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Ot ...
- .Net Core 应用框架。
1.分布式系统框架 https://github.com/MassTransit/MassTransit 2.搜索引擎 https://github.com/XiLife-OSPC/Masuit. ...
- Android OS Startup
OS puts emphases on how to provide interfaces to user's APPs for using hardware device in the conven ...