1.PHP编码规范

  1.1 标签

    PHP 程序可以使用<?php ?>或<?= ?>来界定PHP代码

    在HTML 页面中嵌入纯变量时,使用<?= ?>这样的形式

    纯PHP类文件,文件开始标签使用<?php,闭合标签?>必须省略

  1.2 编码

    PHP文件必须使用无BOM的UTF-8编码方式

  1.3 注释

    单行注释:在语句后面使用“//”注释

    多行注释:如下,注意换行

文件注释
/**
* 描述
*
* @copyright Copyright&copy; 2016, 公司名称
* @author zongshuai
* @Date: 16/7/15
* @Time: 下午5:45
*/ 方法或者函数注释
/**
* 描述
*
* @param 类型 $fields 描述
* @param 类型 $fields 描述
* @return 类型 描述
*/ 属性注释
/**
* 描述
*
* @var 类型
*/

  1.4 命名规则

    类:文件名和类名必须一致,切采用首字母大写的驼峰命名法

    函数和方法:采用首字母小写的驼峰命名法,尽量用有意义,描述性的词语来命名,用checkForErrors()代替errorCheck(),用dumpDataToFile()代替dataFile()。

    变量名:

       用有意义的,描述性的词语来命名变量

       别用缩写。用name, address, salary 等代替 nam, addr, sal   全局变量以”g_” 开头

       别使用单个字母的变量象i, n, x 等. 使用 index, temp 等

       和前端交互的变量名全部用小写加下划线命名

    常量名:全部使用大写字母和下滑线组成,常量的名称中不允许出现小写字母,可使用分隔符作为下划线

  1.5 书写规则

    所有 PHP 文件必须以一个空行结束

    行实际长度不应超过 80 个字符;较长的行应当被拆分成多个不超过80 个字符的后续行。

    空行可以用来改善可读性和区分相关的代码块

    一行不应多于一个语句

    每个缩进的单位约定是4 个空格的缩进,并且不可使用制表符作为缩进,建议使用PhpStrom编辑器

    每个运算符与两边参与运算的值或表达式中间要有一个空格

    在绝大多数可以使用单引号的场合,禁止使用双引号(性能考虑)

    PHP所有关键字必须全部小写。常量 true 、false 和 null 也 必须 全部小写

    类的开始花括号({) 必须 写在函数声明后自成一行,结束花括号(})也 必须 写在函数主体后自成一行

    方法的开始花括号({) 必须 写在函数声明后自成一行,结束花括号(})也 必须 写在函数主体后自成一行

    方法名在声明之后不可跟随一个空格。左括号后面不可有空格,右括号前面不可有空格

    关键词 extends 和 implements 必须 写在类名称的同一行。implements 的继承列表也 可以 分成多行,这样的话,每个继承接口名称都 必须 分开独立成行,包括第一个

    类的属性和方法 必须 添加访问修饰符(privateprotected 以及 public),abstract 以及final 必须 声明在访问修饰符之前

    而 static 必须 声明在访问修饰符之后

    如果存在abstract 和final 声明必须放在可见性声明前面

    一定不可 使用关键字 var 声明一个属性。

    每条语句 一定不可 定义超过一个属性

    在参数列表中,逗号之前不可有空格,逗号之后必须要有一个空格

    方法中有默认值的参数必须放在参数列表的最后面

    参数列表可以被分为多个有一次缩进的多个后续行。如果这么做,列表的第一项必须放在下一行,并且每行必须只放一个参数。

    当参数列表被分为多行,右括号和左花括号必须夹带一个空格放在一起自成一行。

2.数据库命名规范

  2.1命名规范

Laravel框架开发规范-修订版的更多相关文章

  1. Laravel框架开发规范-修订前期版

    1.追加App/Models目录,App/User.php迁移至App/Models目录中 ①配置内容属于架构信息.服务器信息.有必要隐藏无法提交git的信息,请使用.env文件配合env()方法进行 ...

  2. 转:Laravel 项目开发规范

    文件介绍很好 值得细细看看 https://www.jianshu.com/p/e464a35e5ed2 https://learnku.com/docs/laravel-specification/ ...

  3. 使用laravel框架开发接口时ajax post请求报错419

    nginx服务器,使用laravel框架开发后台接口.get请求正常,但是post请求一直报错.H5和APP都不成功,code=419. 解决办法: 找到 VerifyCsrfToken.php文件( ...

  4. 每天一点点之laravel框架开发 - API通过access_token获取用户id报 Unauthenticated. 错误(passport)

    1.首先保证你的config/auth.php 中 guards 的 api 的 driver 选项改为 passport 2.注册中间件,在 app/Http/Kernel.php 文件中的 $ro ...

  5. 每天一点点之laravel框架开发 - Laravel5.6去除URL中的index.php

    在项目routes/web.php文件中添加了自定义的路由后,访问localhost/index.php/aaa,可以正常访问,但是去掉index.php后,提示404 Not Found 1. 按照 ...

  6. Laravel 项目开发规范

    参考:https://fsdhub.com/books/laravel-specification

  7. 每天一点点之laravel框架开发 - passport授权报invalid_credentials

    {"error":"invalid_credentials","message":"The user credentials we ...

  8. php的laravel框架使用心得

    最近在做一项目,是基于laravel的后台api,用于与手机交互的,数据采用json格式.下面说下怎样在两周内把一个新框架或者语言用的得心应手. 项目采用laravel5.4+dingoapi+jwt ...

  9. laravel框架应用和composer扩展包开发

    laravel5.5+ laravel官方地址 laravel是目前最流行的php框架,发展势头迅猛,应用非常广泛,有丰富的扩展包可以应付你能想到的各种应用场景,laravel框架思想前卫,跟随时代潮 ...

随机推荐

  1. [ mysql优化一 ] explain解释select语句

    NOSQL  没有什么数据表, 只是一些变量,key_value  ,redis 支持的变量比较多.可以持久化文件到硬盘上. mysql 关系型数据库 ,表和表中间有各种id的关系. 缺点  高并发读 ...

  2. jvm原理及调优

    一.java内存管理及垃圾回收 jvm内存组成结构 jvm栈由堆.栈.本地方法栈.方法区等部分组成,结构图如下所示: (1)堆 所有通过new创建的对象的内存都在堆中分配,堆的大小可以通过-Xmx和- ...

  3. cocos坐标系及坐标转换

    cocos2dx的坐标系是以左下角为(0,0)点, 向右上为正 世界坐标系:相对于屏幕位置的坐标表示 节点坐标系:相对于父节点的坐标表示 可以相互转换: /** * 将世界坐标转换成节点坐标,忽略锚点 ...

  4. 2015 Syrian Private Universities Collegiate Programming Contest 题解

    题目在这里>_< 发现这场比赛在网上没有完整的题解,甚至连题目代码都没人贴出来(大概是因为题目太水了吧...).所以宝宝就来写个题解,也就当作成长记录了233333 A. Window 题 ...

  5. yii2.0单文件上传和多文件上传

    yii2文件上传使用到yii2自带的文件上传类UploadFIle,以及对应的模型规则,这里分别介绍单文件上传和多文件上传: yii2单个文件上传: 上传步奏,先创建上传表单模型model(包含验证规 ...

  6. POJ 2411 Mondriaan's Dream/[二进制状压DP]

    题目链接[http://poj.org/problem?id=2411] 题意:给出一个h*w的矩形1<=h,w<=11.用1*2和2*1的小矩形去填满这个h*w的矩形,问有多少种方法? ...

  7. java 图形界面 邮件系统

    将后台的邮件系统使用javaGUI编程来实现,让我们可以在桌面端直接控制邮件的收发功能. 一.实现邮箱的登陆功能 邮件系统使用smtp协议发送邮件,使用POP3协议或者IMAP协议来收取邮件.SMTP ...

  8. 【.NET】加密和解密(.NET)

    类名:Security using System; using System.Security.Cryptography; using System.IO; using System.Text; na ...

  9. jquery的animate动画

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...

  10. ssh 依赖关系

    安装ssh时: sudo apt-get install openssh-server 出现错误: 下列软件包有未满足的依赖关系: openssh-server : 依赖: openssh-clien ...