Laravel框架开发规范-修订版
1.PHP编码规范
1.1 标签
PHP 程序可以使用<?php ?>或<?= ?>来界定PHP代码
在HTML 页面中嵌入纯变量时,使用<?= ?>这样的形式
纯PHP类文件,文件开始标签使用<?php,闭合标签?>必须省略
1.2 编码
PHP文件必须使用无BOM的UTF-8编码方式
1.3 注释
单行注释:在语句后面使用“//”注释
多行注释:如下,注意换行
文件注释
/**
* 描述
*
* @copyright Copyright© 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 的继承列表也 可以 分成多行,这样的话,每个继承接口名称都 必须 分开独立成行,包括第一个
类的属性和方法 必须 添加访问修饰符(private、protected 以及 public),abstract 以及final 必须 声明在访问修饰符之前
而 static 必须 声明在访问修饰符之后
如果存在abstract 和final 声明必须放在可见性声明前面
一定不可 使用关键字 var 声明一个属性。
每条语句 一定不可 定义超过一个属性
在参数列表中,逗号之前不可有空格,逗号之后必须要有一个空格
方法中有默认值的参数必须放在参数列表的最后面
参数列表可以被分为多个有一次缩进的多个后续行。如果这么做,列表的第一项必须放在下一行,并且每行必须只放一个参数。
当参数列表被分为多行,右括号和左花括号必须夹带一个空格放在一起自成一行。
2.数据库命名规范
2.1命名规范
Laravel框架开发规范-修订版的更多相关文章
- Laravel框架开发规范-修订前期版
1.追加App/Models目录,App/User.php迁移至App/Models目录中 ①配置内容属于架构信息.服务器信息.有必要隐藏无法提交git的信息,请使用.env文件配合env()方法进行 ...
- 转:Laravel 项目开发规范
文件介绍很好 值得细细看看 https://www.jianshu.com/p/e464a35e5ed2 https://learnku.com/docs/laravel-specification/ ...
- 使用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 ...
- php的laravel框架使用心得
最近在做一项目,是基于laravel的后台api,用于与手机交互的,数据采用json格式.下面说下怎样在两周内把一个新框架或者语言用的得心应手. 项目采用laravel5.4+dingoapi+jwt ...
- laravel框架应用和composer扩展包开发
laravel5.5+ laravel官方地址 laravel是目前最流行的php框架,发展势头迅猛,应用非常广泛,有丰富的扩展包可以应付你能想到的各种应用场景,laravel框架思想前卫,跟随时代潮 ...
随机推荐
- 基于React Native的58 APP开发实践
React Native在iOS界早就炒的火热了,随着2015年底Android端推出后,一套代码能运行于双平台上,真正拥有了Hybrid框架的所有优势.再加上Native的优秀性能,让越来越多的公司 ...
- trove,测试,db小解析
# Copyright 2014 Tesora Inc.# All Rights Reserved.## Licensed under the Apache License, Version 2.0 ...
- sql第一天
关系数据库中的关系指的就是表 table 表 Column 列 Field 字段 Row 行 非空约束 not null 主键约束(PK)primary key constraint 唯 ...
- 多线程随笔二(Task)
Task类是.net 4.0新加进来的特性,对原有的Thread,ThreadPool做了进一步的封装,使得.net平台上的多线程编程变得更加方便.废话不多说,进入正题. 一. Task启动 Task ...
- 关于scanf()函数的一点理解
习惯了c++的cin.cout之后,也不怎么关注空格,反正cin.cout会自动处理.有一次实验,创建Huffman树,要求输入空格字符,当时就懵逼了.cin咋输入空格呢? 没办法,只能重新用scan ...
- Java版求1000以内的完全数
/* * 若一个自然数,它所有的真因子(即除了自身以外的约数)的和恰好等于它本身,这种数叫做完全数,简称完数. * 例如:6=1+2+3. * 题目:求1000以内的完全数. */ public cl ...
- Linux 服务器系统监控脚本 Shell【转】
转自: Linux 服务器系统监控脚本 Shell - 今日头条(www.toutiao.com)http://www.toutiao.com/i6373134402163048961/ 本程序在Ce ...
- Linux安装mysql mysql5.5.40 <NIOT>
一. 操作系统与软件 操作系统及版本 Centos 6.4 依赖包 gcc.gcc-c++.cmake.ncurses-devel 下载目录 /opt Mysql安装目录 /usr/local/ ...
- underScore学习1:匿名函数中call(this)的作用
匿名函数中(function(){}).call(this) 中的.call(this) 有什么用? 我们都知道,.call()可以改变函数执行时的context,即this的指向,源码中的.call ...
- Maven+STS工程中Maven Dependencies 文件夹丢失问题
在我们使用Maven+sts工程中偶尔会出现这种情况: Maven Dependencies文件夹在新打开的工程中丢失,造成 web project 自动编译出错,缺少必要的库文件: 如下图所示的情况 ...