thinkphp5开发规范(加强复习之前的)

一、总结

一句话总结:和类相关的采用驼峰命名法:变量,函数,类,方法,属性采用驼峰命名发;数据库及文件及配置参数是小写字母加下划;常量大写加下划线

1、ThinkPHP5遵循哪种命名规范和哪种自动加载规范?

解答:PSR-2命名规范和PSR-4自动加载规范。

2、thinkphp中的目录如何命名?

解答:目录使用小写+下划线。

3、thinkphp中的类库、函数文件统一以什么为后缀?

解答:.php。

4、thinkphp中的类的文件名均以什么定义,并且什么的路径和类库文件所在路径一致?

解答:命名空间、命名空间。

5、thinkphp中的类文件采用什么法命名?

解答:驼峰法命名(首字母大写)。

6、thinkphp中的除类以外的文件采用什么方式命名?

解答:小写+下划线命名。

7、thinkphp中的类的命名的注意事项是什么?

解答:类的命名采用驼峰法(首字母大写),例如 UserUserType,默认不需要添加后缀,例如UserController应该直接命名为User

8、thinkphp中的函数的命名是怎样?

解答:使用小写字母和下划线(小写字母开头)的方式,例如 get_client_ip

9、thinkphp中的方法怎么命名?

解答:驼峰法(首字母小写),例如 getUserName;。

10、thinkphp中的属性怎么命名?

解答:驼峰法(首字母小写),例如 tableNameinstance;。

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\Indexapp\index\model\User。。

16、php中的关键字是语言结构的一部分么?

解答:是的。

 

二、thinkphp5开发规范

命名规范

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

目录和文件

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

函数和类、属性命名

  • 类的命名采用驼峰法(首字母大写),例如 UserUserType,默认不需要添加后缀,例如UserController应该直接命名为User
  • 函数的命名使用小写字母和下划线(小写字母开头)的方式,例如 get_client_ip
  • 方法的命名使用驼峰法(首字母小写),例如 getUserName
  • 属性的命名使用驼峰法(首字母小写),例如 tableNameinstance
  • 以双下划线“__”打头的函数或方法作为魔术方法,例如 __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\Indexapp\index\model\User

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

php关键字列表

这些词语在 PHP 中有着特殊的意义。它们中有些像是函数,有些像是常量……但是它们不是的,它们只是语言结构的一部分。不能使用它们的任何一个作为常量、方法名或是类名。但是可以将它们作为变量名使用,不过这样会导致混淆。

从PHP7.0.0开始这些关键字允许被用作类的属性、常量以及类的方法名,或者接口名和traints名,除了class不能被用作常量名。

PHP 关键词
__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 print
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中的类的命名的注意事项是什么?

解答:类的命名采用驼峰法(首字母大写),例如 UserUserType,默认不需要添加后缀,例如UserController应该直接命名为User

8、thinkphp中的函数的命名是怎样?

解答:使用小写字母和下划线(小写字母开头)的方式,例如 get_client_ip

9、thinkphp中的方法怎么命名?

解答:驼峰法(首字母小写),例如 getUserName;。

10、thinkphp中的属性怎么命名?

解答:驼峰法(首字母小写),例如 tableNameinstance;。

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\Indexapp\index\model\User。。

16、php中的关键字是语言结构的一部分么?

解答:是的。

 

thinkphp5开发规范(加强复习之前的)的更多相关文章

  1. thinkphp5学习(一)——thinkphp5的目录结构与开发规范

    开发规范: 目录和文件 目录使用小写+下划线: 类库.函数文件统一以.php为后缀: 类的文件名均以命名空间定义,并且命名空间的路径和类库文件所在路径一致: 类文件采用驼峰法命名(首字母大写),其它文 ...

  2. 我的公司培训讲义(1):.NET开发规范教程

    这是1年多以前我在公司所做讲座的讲义,现在与园友们分享,欢迎拿去使用.一起讨论.文中有若干思考题,对园友们是小菜一碟.另有设计模式讲义一篇,随后发布.博文上了首页,感谢博客园团队推荐,也感谢所有园友的 ...

  3. 转载:移动web开发规范

    本文来源:http://blog.csdn.net/joueu/article/details/44329825 以下是规范建议,均是日常在开发当中的的一些经验,仅供参考. 移动web开发规范 一.头 ...

  4. php与数据库代码开发规范

    php与数据库代码开发规范 1/25/2016 6:00:31 PM php对各类变量命名规范 目录名 文件命名 局部变量命名 使用英文动词名词,用下划线作为单词的分割,所有字母均使用小写 目录 up ...

  5. 【敏捷开发】Android团队开发规范

    这里说的开发规范分成目录规范,项目和包名的命名规范,类,方法,变量和常量的命名规范这几种. 目录规范 目录规范——在开发中整体文件夹组织结构. Requirement——需求文档文件夹 Design— ...

  6. 从零开始编写自己的C#框架(3)——开发规范

    由于是业余时间编写,而且为了保证质量,对写出来的东西也会反复斟酌,所以每周只能更新两章左右,请大家谅解,也请大家耐心等待,谢谢大家的支持. 初学者应该怎样学习本系列内容呢?根据我自己的学习经验,一般直 ...

  7. 从零开始编写自己的C#框架(3)——开发规范(转)

    由于是业余时间编写,而且为了保证质量,对写出来的东西也会反复斟酌,所以每周只能更新两章左右,请大家谅解,也请大家耐心等待,谢谢大家的支持. 初学者应该怎样学习本系列内容呢?根据我自己的学习经验,一般直 ...

  8. Web前端开发规范文档(google规范)

    (Xee:其实没什么规范约束,但是养成一种好习惯,何乐而不为?) 区分大小写 xhtml  区分大小写,xhtml要求 标签名 属性名 值都要小写,并且要有双引号和 标签闭合. css 元素名称以及i ...

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

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

随机推荐

  1. menu-普通menu弹出框样式

    今天接触到了menu弹出框样式.主要就是在theme下进行调整.现在把接触到的知识点总结一下. 在theme中,跟menu有关的几个属性如下 <item name="panelBack ...

  2. mmx-编译脚本

    脚本目录位置 /home/zhangshuli/git2/vanzo_team/xulei/Mmx.py 在-/bin目录下,链接Mmx.py ln -sf ~/git2/vanzo_team/xul ...

  3. VUE笔记 - 品牌后台 - v-for Splice Some Filter findIndex indexOf 直接return函数结果

    <body> <div id="app"> <div class="panel panel-primary"> <di ...

  4. 洛谷 P1206 [USACO1.2]回文平方数 Palindromic Squares

    P1206 [USACO1.2]回文平方数 Palindromic Squares 题目描述 回文数是指从左向右念和从右向左念都一样的数.如12321就是一个典型的回文数. 给定一个进制B(2< ...

  5. HTTP网络协议(二)

    HTTP报文内的HTTP信息 HTTP协议交互的信息被称为HTTP报文,请求端的HTTP报文叫做请求报文,响应端的叫做响应报文.    HTTP为了提升传输速率,其在传输数据时,按照数据原样进行压缩传 ...

  6. 汉字转换成对应ASCII

    private static byte[] hanziToHexByte(string hanzistring)        {            byte[] bytes = Encoding ...

  7. 【BZOJ 2119】股市的预测

    [链接]h在这里写链接 [题意]     给你一个长度为n的数组a[]     设b[i] = a[i+1]-a[i];     然后让你在b[i]里面找ABA的形式.     这里B的长度要求为m; ...

  8. js cookie介绍和实例(用于自动登录,记住用户名等)

    js cookie介绍和实例(用于自动登录,记住用户名等) 一.总结 1.cookie在客户端:因为js是最初是用来在客户端和服务器端进行通信使用的,所以客户端比如js可以操作cookie正常 2.c ...

  9. 算法 Tricks(五)—— 将一个序列量化为何值时平方误差最小

    设数列为 A[],区间在 [a, b],设使量化后误差平方最小的数值为 m,则误差平方关于 m 的函数可以写作如下形式: ∑i=ab(A[i]−m)2=(b−a+1)⋅m2−2m∑i=abA[i]+∑ ...

  10. Spring的资源抽象Resource2实体类

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAA0UAAAGkCAIAAABxYhnsAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWX ...