开发规范

命名规范

使用ThinkPHP开发的过程中应该尽量遵循下列命名规范:

  • 类文件都是以.class.php为后缀(这里是指的ThinkPHP内部使用的类库文件,不代表外部加载的类库文件),使用驼峰法命名,并且首字母大写,例如 DbMysql.class.php
  • 类的命名空间地址和所在的路径地址一致,例如 Home\Controller\UserController类所在的路径应该是 Application/Home/Controller/UserController.class.php
  • 确保文件的命名和调用大小写一致,是由于在类Unix系统上面,对大小写是敏感的(而ThinkPHP在调试模式下面,即使在Windows平台也会严格检查大小写);
  • 类名和文件名一致(包括上面说的大小写一致),例如 UserController类的文件命名是UserController.class.php, InfoModel类的文件名是InfoModel.class.php, 并且不同的类库的类命名有一定的规范;
  • 函数、配置文件等其他类库文件之外的一般是以.php为后缀(第三方引入的不做要求);
  • 函数的命名使用小写字母和下划线的方式,例如 get_client_ip
  • 方法的命名使用驼峰法,并且首字母小写或者使用下划线“_”,例如 getUserName_parseType,通常下划线开头的方法属于私有方法;
  • 属性的命名使用驼峰法,并且首字母小写或者使用下划线“_”,例如 tableName_instance,通常下划线开头的属性属于私有属性;
  • 以双下划线“__”打头的函数或方法作为魔法方法,例如 __call__autoload
  • 常量以大写字母和下划线命名,例如 HAS_ONEMANY_TO_MANY
  • 配置参数以大写字母和下划线命名,例如HTML_CACHE_ON
  • 语言变量以大写字母和下划线命名,例如MY_LANG,以下划线打头的语言变量通常用于系统语言变量,例如 _CLASS_NOT_EXIST_
  • 对变量的命名没有强制的规范,可以根据团队规范来进行;
  • ThinkPHP的模板文件默认是以.html 为后缀(可以通过配置修改);
  • 数据表和字段采用小写加下划线方式命名,并注意字段名不要以下划线开头,例如 think_user 表和 user_name字段是正确写法,类似 _username 这样的数据表字段可能会被过滤。

特例:在ThinkPHP里面,有一个函数命名的特例,就是单字母大写函数,这类函数通常是某些操作的快捷定义,或者有特殊的作用。例如:A、D、S、L 方法等等,他们有着特殊的含义,后面会有所了解。

由于ThinkPHP默认全部使用UTF-8编码,所以请确保你的程序文件采用UTF-8编码格式保存,并且去掉BOM信息头(去掉BOM头信息有很多方式,不同的编辑器都有设置方法,也可以用工具进行统一检测和处理),否则可能导致很多意想不到的问题。

开发建议

在使用ThinkPHP进行开发的过程中,我们给出如下建议,会让你的开发变得更轻松:

  • 遵循框架的命名规范和目录规范;
  • 开发过程中尽量开启调试模式,及早发现问题;
  • 多看看日志文件,查找隐患问题;
  • 养成使用I函数获取输入变量的好习惯;
  • 更新或者环境改变后遇到问题首要问题是清空Runtime目录;

ThinkPHP开发规范 --- 摘自ThinkPHP手册相关推荐

  1. 从 ThinkPHP 开发规范 看 PHP 的命名规范和开发建议

    稍稍水一篇博客,摘抄自Think PHP 的开发规范,很有引导性,我们可以将这些规范实践到原生 PHP 中. 命名规范 使用ThinkPHP开发的过程中应该尽量遵循下列命名规范: 类文件都是以.cla ...

  2. PHP开发规范——转自ThinkPHP手册

    命名规范 使用ThinkPHP开发的过程中应该尽量遵循下列命名规范: 类文件都是以.class.php为后缀(这里是指的ThinkPHP内部使用的类库文件,不代表外部加载的类库文件),使用驼峰法命名, ...

  3. ThinkPHP 开发XXXXX后台

    ThinkPHP 开发XXX后台 环境:wampserver3.1.3_x86.exe(Apache 2.4.33  PHP5.6.35  mysql5.7.21) 一.安装composer http ...

  4. YZNCMS基于thinkphp开发的cms

    YZNCMS基于thinkphp开发的cms [项目介绍] Yzncms(又名御宅男cms)是完全开源的项目,基于ThinkPHP5.1.X最新版,框架易于功能扩展,代码维护,方便二次开发 帮助开发者 ...

  5. php开发如何测试,用thinkphp开发微信,如何测试?

    我是一名刚入行不久的菜鸟. 现在用thinkphp开发微信端. 现在我知道的是 getLastSql()和alert()去排查问题, 请问还有什么方法可以进行测试? 回复内容: 我是一名刚入行不久的菜 ...

  6. homestead开发php,介绍ThinkPHP开发环境之Homestead

    下面由thinkphp教程栏目给大家介绍ThinkPHP开发环境之Homestead,希望对需要的朋友有所帮助! 如何搭建 ThinkPHP 开发环境 我们知道 Homestead 是 Laravel ...

  7. thinkphp开发的活动报名小程序源码带后台管理完整的报名小程序源码

    介绍: 活动报名小程序源码,基于thinkphp开发的报名小程序源码,带有后台管理,用户发布活动信息.报名可以后台管理,简单测试了一下,基本都还是可以的. 不过需要注意的是,用户注册部分是发送手机短信 ...

  8. Thinkphp开发无需挂机开源版本支付系统原码带云端ZFB和WX免输入金额跳转支付

    无需挂机 支付宝微信免输金额 跳转支付 反正贼牛p Thinkphp开发无需挂机开源版本支付系统码带云端ZFB和WX免输入金额跳转支付

  9. Web 前端开发规范手册

    Web 前端开发规范手册 一.规范目的 1.1 概述 二.文件规范 2.1 文件命名规则 2.2 文件存放位置规范 2.3 CSS 书写规范 基本原则: 注意细则: 命名规则: id的命名: 基本样式 ...

最新文章

  1. 音视频技术开发周刊 69期
  2. 计算机基础access数据库操作题,2021年3月全国计算机等级考试二级Access数据库程序设计题库及答案讲解...
  3. 如何在CDH5上部署Dolphin Scheduler 1.3.1
  4. 112. Path Sum
  5. MFC中模态对话框和非模态对话框的差别
  6. delphi与java_Delphi XE8中Delphi和JAVA数据类型对应关系!
  7. 商人的盈利方式非你所想
  8. 多线程,异步委托,同步委托几种方式的区别
  9. 项目面试题2:es与solr的区别
  10. sql 分组排序语句顺序
  11. Angular+PrimeNg 分页器给后端传参分页
  12. 关于并发量的简单计算公式
  13. SkeyePlayer源码解析系列之支持H265
  14. Java学习-7.复用类
  15. 前端培训班学习哪家比较好
  16. 全国电子设计大赛历年考题归类分析--太行山麓创客空间基地
  17. 开源?结缘!Towhee 开源社区与上海人工智能实验室 OpenDataLab 成为开源生态合作伙伴
  18. 智慧职教云Java题库_智慧职教云课堂Java程序基础题库及答案
  19. tableau-客户生命周期模型
  20. SM9使用的密钥导出函数

热门文章

  1. 最新51CTO学院vue.js项目实战课程
  2. java英文日期格式化_java如何把英文的日期格式改成数字化的
  3. html sql 编辑器,【web】CodeMirror打造SQL在线编辑器
  4. 聚乙烯醇(PVA)/壳聚糖(CTS)/氧化石墨烯(GO)水凝胶吸附和解吸实验(供应PNIPA/膨润土复合/聚乙烯醇/魔芋胶复合/HAP纳米纤维/GelMA复合丝素蛋白(SF)复合水凝胶等)
  5. 关于MAC安装windows【支持老版本】 支持安装全系列windows
  6. mac环境下搭建frida环境并连接网易mumu模拟器
  7. Pixelmator for Mac(强大的图像处理软件)
  8. Linux面试题总结
  9. Linux从入门到跑路
  10. LaTeX中文字体设置