thinkPHP5.0框架开发规范简介


Posted in PHP onMarch 25, 2017

本文实例讲述了thinkPHP5.0框架开发规范。分享给大家供大家参考,具体如下:

命名规范

ThinkPHP5遵循PSR-2命名规范和PSR-4自动加载规范,并且注意如下规范:

目录和文件

目录不强制规范,驼峰及小写+下划线模式均支持;
类库、函数文件统一以.php为后缀;
类的文件名均以命名空间定义,并且命名空间的路径和类库文件所在路径一致;
类名和类文件名保持一致,统一采用驼峰法命名(首字母大写);

函数和类、属性命名

类的命名采用驼峰法,并且首字母大写,例如 UserUserType,默认不需要添加后缀,例如UserController应该直接命名为User
函数的命名使用小写字母和下划线(小写字母开头)的方式,例如 get_client_ip
方法的命名使用驼峰法,并且首字母小写,例如 getUserName
属性的命名使用驼峰法,并且首字母小写,例如 tableNameinstance
以双下划线“__”打头的函数或方法作为魔法方法,例如 __call__autoload

常量和配置

常量以大写字母和下划线命名,例如 APP_PATHTHINK_PATH
配置参数以小写字母和下划线命名,例如 url_route_onurl_convert

数据表和字段

数据表和字段采用小写加下划线方式命名,并注意字段名不要以下划线开头,例如 think_user 表和 user_name字段,不建议使用驼峰和中文作为数据表字段命名。

应用类库命名空间规范

应用类库的根命名空间统一为app(可以设置app_namespace配置参数更改);

例如:app\index\controller\Index和app\index\model\User

请避免使用PHP保留字(保留字列表参见 http://php.net/manual/zh/reserved.keywords.php )作为常量、类名和方法名,以及命名空间的命名,否则会造成系统错误。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
玩转图像函数库―常见图形操作
Sep 03 PHP
php+oracle 分页类
Oct 09 PHP
PHP 裁剪图片成固定大小代码方法
Sep 09 PHP
解析PHPExcel使用的常用说明以及把PHPExcel整合进CI框架的介绍
Jun 24 PHP
探讨:如何使用PhpDocumentor生成文档
Jun 25 PHP
用PHP和Shell写Hadoop的MapReduce程序
Apr 15 PHP
PHP 面向对象程序设计(oop)学习笔记(一) - 抽象类、对象接口、instanceof 和契约式编程
Jun 12 PHP
使用php+swoole对client数据实时更新(一)
Jan 07 PHP
php上传图片获取路径及给表单字段赋值的方法
Jan 23 PHP
Laravel 批量更新多条数据的示例
Nov 27 PHP
PHP连接MySQL数据库并以json格式输出
May 21 PHP
Laravel框架使用monolog_mysql实现将系统日志信息保存到mysql数据库的方法
Aug 16 PHP
thinkPHP5.0框架安装教程
Mar 25 #PHP
thinkPHP5.0框架应用请求生命周期分析
Mar 25 #PHP
LAMP环境使用Composer安装Laravel的方法
Mar 25 #PHP
CI(CodeIgniter)框架视图中加载视图的方法
Mar 24 #PHP
总结的一些PHP开发中的tips(必看篇)
Mar 24 #PHP
CI(CodeIgniter)框架实现图片上传的方法
Mar 24 #PHP
PHP的自定义模板引擎
Mar 24 #PHP
You might like
PHP函数篇之掌握ord()与chr()函数应用
2011/12/05 PHP
php文件操作小结(删除指定文件/获取文件夹下的文件名/读取文件夹下图片名)
2016/05/09 PHP
基于jQuery图片平滑连续滚动插件
2009/04/27 Javascript
idTabs基于JQuery的根据URL参数选择Tab插件
2012/04/11 Javascript
js实现交换运动效果的方法
2015/04/10 Javascript
Javascript使用post方法提交数据实例
2015/08/03 Javascript
Hallo.js基于jQuery UI所见即所得的Web编辑器
2016/01/26 Javascript
浅谈js多维数组和hash数组定义和使用
2016/07/27 Javascript
微信小程序 Storage API实例详解
2016/10/02 Javascript
Vue.js原理分析之observer模块详解
2017/02/17 Javascript
es7学习教程之fetch解决异步嵌套问题的方法示例
2017/07/21 Javascript
JS同步、异步、延迟加载的方法
2018/05/05 Javascript
angularJs中$http获取后台数据的实例讲解
2018/08/08 Javascript
用原生 JS 实现 innerHTML 功能实例详解
2019/04/03 Javascript
Auto.JS实现抖音刷宝等刷视频app,自动点赞,自动滑屏,自动切换视频功能
2020/05/08 Javascript
JQuery事件冒泡和默认行为代码实例
2020/05/13 jQuery
浅谈Vue使用Elementui修改默认的最快方法
2020/12/05 Vue.js
[46:43]DOTA2上海特级锦标赛D组小组赛#1 EG VS COL第三局
2016/02/28 DOTA
用Python输出一个杨辉三角的例子
2014/06/13 Python
Python isinstance函数介绍
2015/04/14 Python
python机器学习库常用汇总
2017/11/15 Python
python 生成图形验证码的方法示例
2018/11/11 Python
解决pycharm运行程序出现卡住scanning files to index索引的问题
2019/06/27 Python
python 环境搭建 及python-3.4.4的下载和安装过程
2019/07/20 Python
django的分页器Paginator 从django中导入类
2019/07/25 Python
tensorflow2.0的函数签名与图结构(推荐)
2020/04/28 Python
python实现时间序列自相关图(acf)、偏自相关图(pacf)教程
2020/06/03 Python
HTML5实现经典坦克大战坦克乱走还能发出一个子弹
2013/09/02 HTML / CSS
幼儿园大班毕业教师寄语
2014/04/03 职场文书
毕业寄语大全
2014/04/09 职场文书
借款协议书
2014/09/16 职场文书
教师个人事迹材料
2014/12/17 职场文书
2015年高三班主任工作总结
2015/05/21 职场文书
2015年会计年终工作总结
2015/05/26 职场文书
选调生挂职锻炼工作总结
2015/10/23 职场文书
JAVA API 实用类 String详解
2021/10/05 Java/Android