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 相关文章推荐
PHP数据集构建JSON格式及新数组的方法
Nov 07 PHP
PHP Directory 函数的详解
Mar 07 PHP
eAccelerator的安装与使用详解
Jun 13 PHP
使用gd库实现php服务端图片裁剪和生成缩略图功能分享
Dec 25 PHP
phpmailer发送邮件之后,返回收件人是否阅读了邮件的方法
Jul 19 PHP
php中的字符编码转换函数用法示例
Oct 20 PHP
PHP模块memcached使用指南
Dec 08 PHP
php集成套件服务器xampp安装使用教程(适合第一次玩PHP的新手)
Jun 03 PHP
php异常处理方法实例汇总
Jun 24 PHP
如何在旧的PHP系统中使用PHP 5.3之后的库
Dec 02 PHP
PHP使用微信开发模式实现搜索已发送图文及匹配关键字回复的方法
Sep 13 PHP
你真的了解PHP中的引用符号(&)吗
May 12 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中使用preg_replace函数匹配图片并加上链接的方法
2013/02/06 PHP
php中生成随机密码的自定义函数代码
2013/10/21 PHP
PHP递归遍历指定目录的文件并统计文件数量的方法
2015/03/24 PHP
php使用glob函数遍历文件和目录详解
2016/09/23 PHP
PHP错误和异常处理功能模块示例
2016/11/12 PHP
php获取指定数量随机字符串的方法
2017/02/06 PHP
PHP基于ip2long实现IP转换整形
2020/12/11 PHP
JS类库Bindows1.3中的内存释放方式分析
2007/03/08 Javascript
JCalendar 日历控件 v1.0 beta[兼容IE&Firefox] 有文档和例子
2007/05/30 Javascript
js静态方法与实例方法分析
2011/07/04 Javascript
namespace.js Javascript的命名空间库
2011/10/11 Javascript
js获取单选框或复选框值及操作
2012/12/18 Javascript
jquery ztree实现下拉树形框使用到了json数据
2014/05/14 Javascript
JavaScript 事件对象介绍
2015/04/13 Javascript
JavaScript中用于四舍五入的Math.round()方法讲解
2015/06/15 Javascript
jquery form表单获取内容以及绑定数据
2016/02/24 Javascript
jQuery实现下拉框功能实例代码
2016/05/06 Javascript
Bootstrap模态框插件使用详解
2017/05/11 Javascript
BackBone及其实例探究_动力节点Java学院整理
2017/07/14 Javascript
layer实现弹出层自动调节位置
2019/09/05 Javascript
梳理一下vue中的生命周期
2020/12/30 Vue.js
一则python3的简单爬虫代码
2014/05/26 Python
Python实现将通信达.day文件读取为DataFrame
2018/12/22 Python
django 数据库连接模块解析及简单长连接改造方法
2019/08/29 Python
Python面向对象程序设计之类和对象、实例变量、类变量用法分析
2020/03/23 Python
英国买鞋网站:Charles Clinkard
2019/11/14 全球购物
乌克兰鞋类购物网站:Eobuv.com.ua
2020/11/28 全球购物
怎样让char类型的东西转换成int类型
2013/12/09 面试题
雪山饭庄的创业计划书范文
2014/01/18 职场文书
社会学专业求职信
2014/02/24 职场文书
双创工作实施方案
2014/03/26 职场文书
银行求职自荐信
2014/06/30 职场文书
房屋买卖协议样本
2014/11/16 职场文书
员工离职感谢信
2015/01/22 职场文书
2015年教研室工作总结范文
2015/05/23 职场文书
初中信息技术教学反思
2016/02/16 职场文书