Laravel框架开发规范-修订前期版
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 声明语句块后面,必须 插入一个空白行。
类的开始花括号({) 必须 写在函数声明后自成一行,结束花括号(})也 必须 写在函数主体后自成一行
方法的开始花括号({) 必须 写在函数声明后自成一行,结束花括号(})也 必须 写在函数主体后自成一行
类的属性和方法 必须 添加访问修饰符(private、protected 以及 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© 2016, 公司名称
* @author zongshuai
* @Date: 16/7/15
* @Time: 下午5:45
*/
方法或函数注释
/**
* 设备出库记录列表接口
*
* @param 类型 $fields 描述
* @param 类型 $fields 描述
* @return 类型 描述
*/
属性注释
/**
* 描述
*
* @var 类型
*/
Laravel框架开发规范-修订前期版的更多相关文章
- Laravel框架开发规范-修订版
1.PHP编码规范 1.1 标签 PHP 程序可以使用<?php ?>或<?= ?>来界定PHP代码 在HTML 页面中嵌入纯变量时,使用<?= ?>这样的形式 纯 ...
- 转:Laravel 项目开发规范
文件介绍很好 值得细细看看 https://www.jianshu.com/p/e464a35e5ed2 https://learnku.com/docs/laravel-specification/ ...
- 【转】Android 开发规范(完结版)
摘要 1 前言 2 AS 规范 3 命名规范 4 代码样式规范 5 资源文件规范 6 版本统一规范 7 第三方库规范 8 注释规范 9 测试规范 10 其他的一些规范 1 前言 为了有利于项目维护.增 ...
- 使用laravel框架开发接口时ajax post请求报错419
nginx服务器,使用laravel框架开发后台接口.get请求正常,但是post请求一直报错.H5和APP都不成功,code=419. 解决办法: 找到 VerifyCsrfToken.php文件( ...
- 每天一点点之laravel框架开发 - API通过access_token获取用户id报 Unauthenticated. 错误(passport)
1.首先保证你的config/auth.php 中 guards 的 api 的 driver 选项改为 passport 2.注册中间件,在 app/Http/Kernel.php 文件中的 $ro ...
- 每天一点点之laravel框架开发 - Laravel5.6去除URL中的index.php
在项目routes/web.php文件中添加了自定义的路由后,访问localhost/index.php/aaa,可以正常访问,但是去掉index.php后,提示404 Not Found 1. 按照 ...
- Laravel 项目开发规范
参考:https://fsdhub.com/books/laravel-specification
- 每天一点点之laravel框架开发 - passport授权报invalid_credentials
{"error":"invalid_credentials","message":"The user credentials we ...
- 【转】Android开发规范
转自:https://github.com/Blankj/AndroidStandardDevelop 摘要 1 前言 2 AS 规范 3 命名规范 4 代码样式规范 5 资源文件规范 6 版本统一规 ...
随机推荐
- Python学习笔记——基础篇【第六周】——hashlib模块
常用模块之hashlib模块 用于加密相关的操作,3.x里代替了md5模块和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法 import ...
- SpringMVC一路总结(一)(转)
itRed You are never too old to set another goal or to dream a new dream. SpringMVC一路总结(一) SpringMVC听 ...
- LNA
low noise amplifier ,低噪声放大器. PA主要侧重输出功率,LNA侧重噪声系数,所以LNA用于前级,PA用作末级.
- 洛谷-乘积最大-NOIP2000提高组复赛
题目描述 Description 今年是国际数学联盟确定的“2000――世界数学年”,又恰逢我国著名数学家华罗庚先生诞辰90周年.在华罗庚先生的家乡江苏金坛,组织了一场别开生面的数学智力竞赛的活动,你 ...
- PQ分区魔术师v9.0 中文版
软件名称: pqmagic 硬盘分区大师9.0中文绿色版 软件大小:5.80MB 软件语言:简体中文 软件类别:磁盘工具 软件授权:免费软件 更新时间:2013-10-082013-10-08 09: ...
- select空间提交form表单传递参数
如下, 到了 <form name="modelForm" action="/portal/defectinfo/toDefectPage?projectname= ...
- 转换汉字为字符原始码 如:汉字 -> 汉
$output = mb_convert_encoding($str, 'HTML-ENTITIES', $encode);$encode为输入的比如utf-8,因为utf-8可以包括英文,中文等字符 ...
- appium元素定位及操作
1.测试用例准备 数据准备 前提条件 操作步骤 预期结果 2.TestNG 用例组织:@Test @Before Class 结果验证:Assert 数据驱动:@DataProvide ...
- 架设自己的FTP服务器 Serv-U详细配置图文教程
转自:http://www.jb51.net/article/31635.htm 所有不是很要求安全的情况下是可以用serv_U的,当然我们也可以通过一些设置,保证serv_u安全运行.这里就分享下s ...
- sublime text 安装 SFTP
1 先安装Package Control import urllib.request,os,hashlib; h = 'df21e130d211cfc94d9b0905775a7c0f' + '1e ...