thinkphp5开发规范(加强复习之前的)
thinkphp5开发规范(加强复习之前的)
一、总结
一句话总结:和类相关的采用驼峰命名法:变量,函数,类,方法,属性采用驼峰命名发;数据库及文件及配置参数是小写字母加下划;常量大写加下划线
1、ThinkPHP5遵循哪种命名规范和哪种自动加载规范?
解答:PSR-2命名规范和PSR-4自动加载规范。
2、thinkphp中的目录如何命名?
解答:目录使用小写+下划线。
3、thinkphp中的类库、函数文件统一以什么为后缀?
解答:.php。
4、thinkphp中的类的文件名均以什么定义,并且什么的路径和类库文件所在路径一致?
解答:命名空间、命名空间。
5、thinkphp中的类文件采用什么法命名?
解答:驼峰法命名(首字母大写)。
6、thinkphp中的除类以外的文件采用什么方式命名?
解答:小写+下划线命名。
7、thinkphp中的类的命名的注意事项是什么?
解答:类的命名采用驼峰法(首字母大写),例如 User、UserType,默认不需要添加后缀,例如UserController应该直接命名为User。
8、thinkphp中的函数的命名是怎样?
解答:使用小写字母和下划线(小写字母开头)的方式,例如 get_client_ip。
9、thinkphp中的方法怎么命名?
解答:驼峰法(首字母小写),例如 getUserName;。
10、thinkphp中的属性怎么命名?
解答:驼峰法(首字母小写),例如 tableName、instance;。
11、thinkphp中的魔术方法怎么命名?
解答:以双下划线“__”打头的函数或方法作为魔术方法,例如 __call 和 __autoload。
12、thinkphp中的常量怎么命名?
解答:常量以大写字母和下划线命名,例如 APP_PATH和 THINK_PATH。
13、thinkphp中的配置参数怎么命名?
解答:配置参数以小写字母和下划线命名,例如 url_route_on 和url_convert。
14、thinkphp中的数据表和字段采用什么方式命名?
解答:数据表和字段采用小写加下划线方式命名,并注意字段名不要以下划线开头,例如 think_user 表和 user_name字段,不建议使用驼峰和中文作为数据表字段命名。
15、thinkphp中的应用类库的根命名空间统一为什么?
解答:为app(不建议更改)。例如:app\index\controller\Index和app\index\model\User。。
16、php中的关键字是语言结构的一部分么?
解答:是的。
二、thinkphp5开发规范
命名规范
ThinkPHP5遵循PSR-2命名规范和PSR-4自动加载规范,并且注意如下规范:
目录和文件
- 目录使用小写+下划线;
- 类库、函数文件统一以
.php为后缀; - 类的文件名均以命名空间定义,并且命名空间的路径和类库文件所在路径一致;
- 类文件采用驼峰法命名(首字母大写),其它文件采用小写+下划线命名;
- 类名和类文件名保持一致,统一采用驼峰法命名(首字母大写);
函数和类、属性命名
- 类的命名采用驼峰法(首字母大写),例如
User、UserType,默认不需要添加后缀,例如UserController应该直接命名为User; - 函数的命名使用小写字母和下划线(小写字母开头)的方式,例如
get_client_ip; - 方法的命名使用驼峰法(首字母小写),例如
getUserName; - 属性的命名使用驼峰法(首字母小写),例如
tableName、instance; - 以双下划线“__”打头的函数或方法作为魔术方法,例如
__call和__autoload;
常量和配置
- 常量以大写字母和下划线命名,例如
APP_PATH和THINK_PATH; - 配置参数以小写字母和下划线命名,例如
url_route_on和url_convert;
数据表和字段
- 数据表和字段采用小写加下划线方式命名,并注意字段名不要以下划线开头,例如
think_user表和user_name字段,不建议使用驼峰和中文作为数据表字段命名。
应用类库命名空间规范
应用类库的根命名空间统一为app(不建议更改,可以设置app_namespace配置参数更改,V5.0.8版本开始使用APP_NAMESPACE常量定义);
例如:app\index\controller\Index和app\index\model\User。
请避免使用PHP保留字(保留字列表参见 http://php.net/manual/zh/reserved.keywords.php )作为常量、类名和方法名,以及命名空间的命名,否则会造成系统错误。
php关键字列表
这些词语在 PHP 中有着特殊的意义。它们中有些像是函数,有些像是常量……但是它们不是的,它们只是语言结构的一部分。不能使用它们的任何一个作为常量、方法名或是类名。但是可以将它们作为变量名使用,不过这样会导致混淆。
从PHP7.0.0开始这些关键字允许被用作类的属性、常量以及类的方法名,或者接口名和traints名,除了class不能被用作常量名。
| __halt_compiler() | abstract | and | array() | as |
| break | callable (as of PHP 5.4) | case | catch | class |
| clone | const | continue | declare | default |
| die() | do | echo | else | elseif |
| empty() | enddeclare | endfor | endforeach | endif |
| endswitch | endwhile | eval() | exit() | extends |
| final | finally (从PHP 5.5开始) | for | foreach | function |
| global | goto (从PHP 5.3开始) | if | implements | include |
| include_once | instanceof | insteadof (从PHP 5.4开始) | interface | isset() |
| list() | namespace (从PHP 5.3开始) | new | or | |
| private | protected | public | require | require_once |
| return | static | switch | throw | trait (从PHP 5.4开始) |
| try | unset() | use | var | while |
| xor | yield (从PHP 5.5开始) |
| __CLASS__ | __DIR__ (从PHP 5.3开始) | __FILE__ | __FUNCTION__ | __LINE__ | __METHOD__ |
| __NAMESPACE__ (从PHP 5.3开始) | __TRAIT__ (从PHP 5.4开始) |
三、测试题-简答题
1、ThinkPHP5遵循哪种命名规范和哪种自动加载规范?
解答:PSR-2命名规范和PSR-4自动加载规范。
2、thinkphp中的目录如何命名?
解答:目录使用小写+下划线。
3、thinkphp中的类库、函数文件统一以什么为后缀?
解答:.php。
4、thinkphp中的类的文件名均以什么定义,并且什么的路径和类库文件所在路径一致?
解答:命名空间、命名空间。
5、thinkphp中的类文件采用什么法命名?
解答:驼峰法命名(首字母大写)。
6、thinkphp中的除类以外的文件采用什么方式命名?
解答:小写+下划线命名。
7、thinkphp中的类的命名的注意事项是什么?
解答:类的命名采用驼峰法(首字母大写),例如 User、UserType,默认不需要添加后缀,例如UserController应该直接命名为User。
8、thinkphp中的函数的命名是怎样?
解答:使用小写字母和下划线(小写字母开头)的方式,例如 get_client_ip。
9、thinkphp中的方法怎么命名?
解答:驼峰法(首字母小写),例如 getUserName;。
10、thinkphp中的属性怎么命名?
解答:驼峰法(首字母小写),例如 tableName、instance;。
11、thinkphp中的魔术方法怎么命名?
解答:以双下划线“__”打头的函数或方法作为魔术方法,例如 __call 和 __autoload。
12、thinkphp中的常量怎么命名?
解答:常量以大写字母和下划线命名,例如 APP_PATH和 THINK_PATH。
13、thinkphp中的配置参数怎么命名?
解答:配置参数以小写字母和下划线命名,例如 url_route_on 和url_convert。
14、thinkphp中的数据表和字段采用什么方式命名?
解答:数据表和字段采用小写加下划线方式命名,并注意字段名不要以下划线开头,例如 think_user 表和 user_name字段,不建议使用驼峰和中文作为数据表字段命名。
15、thinkphp中的应用类库的根命名空间统一为什么?
解答:为app(不建议更改)。例如:app\index\controller\Index和app\index\model\User。。
16、php中的关键字是语言结构的一部分么?
解答:是的。
thinkphp5开发规范(加强复习之前的)的更多相关文章
- thinkphp5学习(一)——thinkphp5的目录结构与开发规范
开发规范: 目录和文件 目录使用小写+下划线: 类库.函数文件统一以.php为后缀: 类的文件名均以命名空间定义,并且命名空间的路径和类库文件所在路径一致: 类文件采用驼峰法命名(首字母大写),其它文 ...
- 我的公司培训讲义(1):.NET开发规范教程
这是1年多以前我在公司所做讲座的讲义,现在与园友们分享,欢迎拿去使用.一起讨论.文中有若干思考题,对园友们是小菜一碟.另有设计模式讲义一篇,随后发布.博文上了首页,感谢博客园团队推荐,也感谢所有园友的 ...
- 转载:移动web开发规范
本文来源:http://blog.csdn.net/joueu/article/details/44329825 以下是规范建议,均是日常在开发当中的的一些经验,仅供参考. 移动web开发规范 一.头 ...
- php与数据库代码开发规范
php与数据库代码开发规范 1/25/2016 6:00:31 PM php对各类变量命名规范 目录名 文件命名 局部变量命名 使用英文动词名词,用下划线作为单词的分割,所有字母均使用小写 目录 up ...
- 【敏捷开发】Android团队开发规范
这里说的开发规范分成目录规范,项目和包名的命名规范,类,方法,变量和常量的命名规范这几种. 目录规范 目录规范——在开发中整体文件夹组织结构. Requirement——需求文档文件夹 Design— ...
- 从零开始编写自己的C#框架(3)——开发规范
由于是业余时间编写,而且为了保证质量,对写出来的东西也会反复斟酌,所以每周只能更新两章左右,请大家谅解,也请大家耐心等待,谢谢大家的支持. 初学者应该怎样学习本系列内容呢?根据我自己的学习经验,一般直 ...
- 从零开始编写自己的C#框架(3)——开发规范(转)
由于是业余时间编写,而且为了保证质量,对写出来的东西也会反复斟酌,所以每周只能更新两章左右,请大家谅解,也请大家耐心等待,谢谢大家的支持. 初学者应该怎样学习本系列内容呢?根据我自己的学习经验,一般直 ...
- Web前端开发规范文档(google规范)
(Xee:其实没什么规范约束,但是养成一种好习惯,何乐而不为?) 区分大小写 xhtml 区分大小写,xhtml要求 标签名 属性名 值都要小写,并且要有双引号和 标签闭合. css 元素名称以及i ...
- 从" ThinkPHP 开发规范 "看 PHP 的命名规范和开发建议
稍稍水一篇博客,摘抄自Think PHP 的开发规范,很有引导性,我们可以将这些规范实践到原生 PHP 中. 命名规范 使用ThinkPHP开发的过程中应该尽量遵循下列命名规范: 类文件都是以.cla ...
随机推荐
- wap.css
wap.css 一.总结 1.官方有教程:英语的 http://www.developershome.com/wap/wcss/ 2.wap.css :就是控制页面在手机端样式的 3.DOCTYPE ...
- springMVC视图解析器——InternalResourceViewResolver(转)
springmvc在处理器方法中通常返回的是逻辑视图,如何定位到真正的页面,就需要通过视图解析器. springmvc里提供了多个视图解析器,InternalResourceViewResolver就 ...
- Dcloud课程5 php如何实现文件缓存技术(静态数据缓存)
Dcloud课程5 php如何实现文件缓存技术(静态数据缓存) 一.总结 一句话总结:保存在磁盘上的静态文件,用PHP生成数据到静态文件中.其实cookie和session使用的就是这样的技术,所以c ...
- 2.JPA学习总结
转自:https://shmilyaw-hotmail-com.iteye.com/blog/1969190 前言 最近在做一个项目的时候因为牵涉到要对数据库的操作,在最开始实现的时候采用了直接的JD ...
- TabControl控件重绘
原文地址:http://www.codeproject.com/Articles/91387/Painting-Your-Own-Tabs-Second-Edition 在网上看到重绘TabContr ...
- input选中 和 select点击下拉选择获取选中选项的值
1.input选中$('#checkBox').find('input').each(function(i){ if($(this).prop('checked')){//获取是否选中 并判断 $(t ...
- (转)Windows Server 2012 R2虚拟机自激活(AVMA)技术
转自: 老丁的技术博客 相信Hyper-v管理员都有这样的经历,安装多台虚拟机后,都要一台一台手工激活,如果虚拟机足够多的话,这是一项很繁琐的工作,但从Windows Server 2012 R2开始 ...
- Testfan软件测试社区
1. http://ask.testfan.cn/article/902 Appium 服务端安装-windows2. http://ask.testfan.cn/article/1078 最新 ...
- 设计模式--单例模式之Lock
1.为什么用Lock及关键知识 当我们使用线程的时候,效率最高的方式当然是异步,即个个线程同时运行,其间互不依赖和等待.当不同的线程都需要访问某个资源的时候,就需要同步机制了,也就是说当对同一个资源进 ...
- UVA 10970 - Big Chocolate 洪水@。@
先横着切m-1刀,矩形巧克力就变成了1*n (有m个)然后每个都要切n-1下,所以有 m*(n-1) +(m-1)= n*m-1 #include<cstdio> int main() { ...