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静态类
Nov 25 PHP
php strcmp使用说明
Apr 22 PHP
php调用方法mssql_fetch_row、mssql_fetch_array、mssql_fetch_assoc和mssql_fetch_objcect读取数据的区别
Aug 08 PHP
php流量统计功能的实现代码
Sep 29 PHP
win7计划任务定时执行PHP脚本设置图解
May 09 PHP
phpstorm配置Xdebug进行调试PHP教程
Dec 01 PHP
php读取和保存base64编码的图片内容
Apr 22 PHP
php curl获取https页面内容,不直接输出返回结果的设置方法
Jan 15 PHP
laravel实现简单用户权限的示例代码
May 28 PHP
phpinfo的知识点总结
Oct 10 PHP
php+laravel依赖注入知识点总结
Nov 04 PHP
php微信小程序解包过程实例详解
Mar 31 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程序员最常犯的11个MySQL错误小结
2010/11/20 PHP
解析php中var_dump,var_export,print_r三个函数的区别
2013/06/21 PHP
php判断电脑访问、手机访问的例子
2014/05/10 PHP
phpMyAdmin自动登录和取消自动登录的配置方法
2014/05/12 PHP
php、mysql查询当天,查询本周,查询本月的数据实例(字段是时间戳)
2017/02/04 PHP
PHP获取HTTP body内容的方法
2018/12/31 PHP
laravel admin实现分类树/模型树的示例代码
2020/06/10 PHP
Javascript之文件操作
2007/03/07 Javascript
javascript动画之圆形运动,环绕鼠标运动作小球
2010/07/20 Javascript
JavaScript学习历程和心得小结
2010/08/16 Javascript
9行javascript代码获取QQ群成员具体实现
2013/10/16 Javascript
js的匿名函数使用介绍
2013/12/11 Javascript
Webpack 实现 AngularJS 的延迟加载
2016/03/02 Javascript
webpack学习笔记之优化缓存、合并、懒加载
2017/08/24 Javascript
基于vue2.0实现简单轮播图
2017/11/27 Javascript
使用JSON格式提交数据到服务端的实例代码
2018/04/01 Javascript
JavaScript动态创建二维数组的方法示例
2019/02/01 Javascript
js利用递归与promise 按顺序请求数据的方法
2019/08/30 Javascript
jquery实现鼠标悬浮弹出气泡提示框
2020/12/23 jQuery
通过C++学习Python
2015/01/20 Python
Python爬虫之正则表达式基本用法实例分析
2018/08/08 Python
Python3字符串encode与decode的讲解
2019/04/02 Python
pycharm Tab键设置成4个空格的操作
2021/02/26 Python
用HTML5制作烟火效果的教程
2015/05/12 HTML / CSS
英国拳击装备购物网站:RDX Sports
2018/01/23 全球购物
blueseventy官网:铁人三项和比赛泳衣
2021/02/06 全球购物
竞争上岗演讲稿范文
2014/05/12 职场文书
2014年师德师风自我剖析材料
2014/09/27 职场文书
公务员考察材料范文
2014/12/23 职场文书
通知格式
2015/04/27 职场文书
保护校园环境倡议书
2015/04/28 职场文书
办公经费申请报告
2015/05/15 职场文书
学校财务管理制度
2015/08/04 职场文书
2015年学校消防安全工作总结
2015/10/14 职场文书
微软Win11什么功能最惊艳? Windows11新功能特性汇总
2021/11/21 数码科技
spring注解 @PropertySource配置数据源全流程
2022/03/25 Java/Android