1.追加App/Models目录,App/User.php迁移至App/Models目录中

①配置内容属于架构信息、服务器信息、有必要隐藏无法提交git的信息,请使用.env文件配合env()方法进行设定(.env.example中必须添加对应的字段和示例)

②属于业务逻辑的常量内容,或可以提交到git无需隐藏的部分配置类信息,直接在定义代码处使用环境判断函数判断环境后将所有值都写入代码中。

除了由后台管理员或者程序生成的富文本使用{!! !!},其余输出必须使用{{ }}或{{{ }}}

laravel5.0起,默认{{ }}是会进行html_filter处理的,可以避免XSS攻击

PHP代码文件 必须 以 <?php 或 <?= 标签开始;

PHP代码文件 必须 以 不带 BOM 的 UTF-8 编码

类的命名 必须 遵循 StudlyCaps 大写开头的驼峰命名规范;

类中的常量所有字母都 必须 大写,单词间用下划线分隔;

方法名称 必须 符合 camelCase 式的小写开头驼峰命名规范。

根据规范,每个类都独立为一个文件,且命名空间至少有一个层次:顶级的组织名称(vendor name)。

代码 必须 使用4个空格符而不是「Tab 键」进行缩进。使用空格缩进,让对齐变得更方便。

每行的字符数 应该 软性保持在 80 个之内,理论上 一定不可 多于 120 个,但 一定不可 有硬性限制

每个 namespace 命名空间声明语句和 use 声明语句块后面,必须 插入一个空白行。

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

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

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

控制结构的关键字后 必须 要有一个空格符,而调用方法或函数时则 一定不可 有。

控制结构的开始花括号({) 必须 写在声明的同一行,而结束花括号(}) 必须 写在主体后自成一行

控制结构的开始左括号后和结束右括号前,都 一定不可 有空格符

所有PHP文件 必须 以一个空白行作为结束。

纯PHP代码文件 必须 省略最后的 ?> 结束标签。

非空行后 一定不可 有多余的空格符。

空行 可以 使得阅读代码更加方便以及有助于代码的分块。

每行 一定不可 存在多于一条语句

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

所有 use 必须 在 namespace 后声明。

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

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

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

不该 使用下划线作为前缀,来区分属性是 protected 或 private。

不该 使用下划线作为前缀,来区分方法是 protected 或 private。

方法名称后 一定不可 有空格符,其开始花括号 必须 独占一行,结束花括号也 必须 在方法主体后单独成一行。参数左括号后和右括号前 一定不可 有空格。

参数列表中,每个逗号后面 必须 要有一个空格,而逗号前面 一定不可 有空格

有默认值的参数,必须 放到参数列表的末尾

参数列表 可以 分列成多行,这样,包括第一个参数在内的每个参数都 必须 单独成行。

方法及函数调用时,方法名或函数名与参数左括号之间 一定不可 有空格,参数右括号前也 一定不可 有空格。每个参数前一定不可 有空格,但其后 必须 有一个空格。

应该 使用关键词 elseif 代替所有 else if ,以使得所有的控制关键字都像是单独的一个词。

MySQL字段:小写、下划线(snake-case)

1) 单行注释:在语句结尾用双反斜杠”// “注释

2) 多行注释:多行注视以“/**”符号开头,以”*/ “符号作为注释结束符。

文件注释

/**
* 详细的功能描述(可略)
*
* @copyright Copyright&copy; 2016, 公司名称
* @author zongshuai
* @Date: 16/7/15
* @Time: 下午5:45
*/

方法或函数注释

    /**
* 设备出库记录列表接口
*
* @param 类型 $fields 描述
* @param 类型 $fields 描述
* @return 类型 描述
*/

属性注释

/**
* 描述
*
* @var 类型
*/

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

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

    1.PHP编码规范 1.1 标签 PHP 程序可以使用<?php ?>或<?= ?>来界定PHP代码 在HTML 页面中嵌入纯变量时,使用<?= ?>这样的形式 纯 ...

  2. 转:Laravel 项目开发规范

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

  3. 【转】Android 开发规范(完结版)

    摘要 1 前言 2 AS 规范 3 命名规范 4 代码样式规范 5 资源文件规范 6 版本统一规范 7 第三方库规范 8 注释规范 9 测试规范 10 其他的一些规范 1 前言 为了有利于项目维护.增 ...

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

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

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

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

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

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

  7. Laravel 项目开发规范

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

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

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

  9. 【转】Android开发规范

    转自:https://github.com/Blankj/AndroidStandardDevelop 摘要 1 前言 2 AS 规范 3 命名规范 4 代码样式规范 5 资源文件规范 6 版本统一规 ...

随机推荐

  1. html-----vedio标签(HTML5新标签VIDEO在IOS上默认全屏播放)

    今天做一个app时发现一个问题,应用html5中的video标签加载视频,在Android手机上默认播放大小,但是换成iPhone手机上出问题了,默认弹出全屏播放,查找了好多论坛,都没有谈论这个的.然 ...

  2. Android 6.0之权限管理

    安卓6.0的权限体系分为非敏感权限和敏感权限,非敏感权限默认获取,可以手动关闭. 敏感权限必须由app在运行时动态申请.而存储读写空间权限是一个敏感权限,不是一个“很正常的必须权限”. 安卓并不是想要 ...

  3. Python学习笔记——基础篇【第七周】———类的静态方法 类方法及属性

    新式类和经典类的区别 python2.7 新式类——广度优先 经典类——深度优先 python3.0 新式类——广度优先 经典类——广度优先 广度优先才是正常的思维,所以python 3.0中已经修复 ...

  4. [NYLG-OJ] 77 开灯问题(白书例题)

    #include<stdio.h> int main() { int a[1010]={0}; //储存灯的开闭情况 int n,k,i,j; scanf("%d%d" ...

  5. how many different bst given n nodes?

    Reference: http://stackoverflow.com/questions/3042412/with-n-no-of-nodes-how-many-different-binary-a ...

  6. mvc前端样式自定义

    1.别忘记加 htmlAttributes @Html.EditorFor(model => model.Quantity, new { htmlAttributes = new { @clas ...

  7. 用PhotoSwipe制作相册,手势可放大

    1.引入css和js <link href="css/photoswipee.css" rel="stylesheet" type="text/ ...

  8. 原 iOS深入学习(Block全面分析)http://my.oschina.net/leejan97/blog/268536

    原 iOS深入学习(Block全面分析) 发表于1年前(2014-05-24 16:45)   阅读(26949) | 评论(14) 39人收藏此文章, 我要收藏 赞21 12月12日北京OSC源创会 ...

  9. linux 调整文件系统大小 LVM

    fuser -m /home umount /home lvreduce -L 150G /dev/mapper/centos-home lvextend -L +300G /dev/mapper/c ...

  10. rhel7.2 yum

    redhat 的更新包只对注册的用户生效,所以我们自己手动更改成CentOS 的更新包,CentOS几乎和redhat是一样的,所以无需担心软件包是否可安装,安装之后是否有问题. (前提是wget包已 ...