当前位置:文档之家› PHP代码规范

PHP代码规范

PHP代码规范
PHP代码规范

PHP规范草案

Ver.0.0.1

1.变量命名与类的命名

(1) 类型 + 变量名: $inum

基于PHP语言弱类型的特点,以匈牙利命名法为参考,但国人不习惯大写字母,所以纯小写,为基本规范。

字符+命名的方式,比如 $susername

一个类型字符

一个类型

s代表字符串,i代表整型,a代表数组,o代表对象, r代表资源, b布尔型,例子:

01.$inum = 55;

02.$itotal = 110;

03.$susername = 'root';

04.$spassword = '123456';

05.$rlink =mysql_connect('localhost', 'root', '123456');

06.$odb = new dbstuff();

07.$anumber = array(1, 2, 3, 4, 5);

特殊常用的少数变量,可以不用书写前缀,比如

$uid, $sid, $sql, $row, $db

程序员的类型

的类型这种书写方式缺点:略需一点适应成本,但习惯后对程序员

这种书写方式缺点:略需一点适应成本,但习惯后对

开发和代码阅读调试意义重大。

和代码阅读调试意义重大。

思维有帮助,对团队开发

思维有帮助,对团队

设计字段类型及长度字符串类型一般没有

数据库设计字段类型及长度字符串类型一般没有

(2) 常用的命名及

常用的命名及数据库

默认值,而非主键的数值类型,非空,默认值为0。

username 用户名, char(16)

password 密码, char(32)

email 邮件, char(50)

时间,,int(10)

dateline时间

register 注册

login 登陆

adminid 管理员id,某某id的命名,采用名字+id的方式,

比如groupid,

常用的id可用缩写替代:比如

uid 用户id, mediumint(8)

sid SESSION id

displayorder 文章或类别现实顺序 smallint(6), -2为未审核, -1忽略, 0以上为正常顺序。

基本规范摘取了Discuz 设计设计数据数据库的用法,效率是有目共睹的。库的用法,效率是有目共睹的。

(3) GET/POST/COOKIE 在规则1的基础上,在变量名最前面附加一位标识

GET 为g, POST 为p, COOKIE 为c,比如

$psusername

$pspassword

$gisid

$csauth

这样书写的好处是有利于代码阅读与调试,当一个这样书写的好处是有利于代码阅读与调试,当一个功能功能实现涉及到实现涉及到多个多个函数函数时,将非常有利。时,将非常有利。

(4) 表总数的命名,请用复数形式,如:

$iviews 总浏览数

$ireplies 总回复数

$iclicks 总点击数

(5) 表权限判断的命名,请在前面附加allow ,如

$ballowview

$ballowpost

$ballowvisit

(6) 常规变量定义一般不使用下划线_,中划线- 和大写字母,特殊字符等。

(7) 类名

类名在使用中经常遇到命名空间的问题,因此,类名的命名规范除了要遵循普通命名规则以外,还需在类名前附加产品名称。该名称最好与表名前缀一致。

例如:

01.class cdb_cart {

02.……

03.}

2.书写细节规范

(1) 空格:

A. 等号或其他运算符两边各有一个空格,比如

$inum = 55;

$inum = 55 + 66;

B. 并列的各项中间用逗号分隔,其后要有一个空格。如:

array(1, 2, 3)而非array(1,2,3)

C. if语句中,if关键字后没有空格,而小括号的条件之后有空格,

比如

01.if($inum == 55) {

02.……

03.}

(2) 断行,如果语句过长(默认为80字符)时,需要断行譬如:

01.array(

02.'a' => '这是一个字符串',

03.'b' => '这是第二个字符串',

04.'c' => '这是第三个字符串'

05.)

(3) 缩进

以4个空格为一个缩进单位为准。

两种方案:

A. 统一用Tab键,在代码书写完发布前,用编辑器功能统一替换为

4个空格

B. 手动敲4个空格,或者编辑器功能自定义

(4) 大括号与小括号

大括号的两种方案:

A.

01.if() {

02.……

03.} elseif() {

04.……

05.} elseif() {

06.……

07.} else {

08.……

09.}

B.

01.if()

02.{

03.……

04.

}05.

elseif()06.

{07.

……08.

}09.

else 10.

{11.

……12.}

小括号,在运算符优先级容易产生混淆的地方,必须用小括号大括号,在变量拼接时,如果出现某个变量值作为字符串的一部分,或者模板模板中复杂嵌套,要用大括号中复杂嵌套,要用大括号{}括起来。

如 $sql = "SELECT uid FROM {$tablepre}members";

或 模板中:{$aarray[$key][sec]}

(5) 单引号,双引号与SQL

尽量使用单引号,比如$susername = 'root';

在写数组的索引时,必须使用单引号:

如 $alist['key']的方式,而不是$alist[key]。

单双引号的嵌套组合,SQL 语句(关键字需大写)拼接的推荐写法。字段名可使用``号区隔。A. $sql = "SELECT `uid` FROM {$tablepre}members WHERE `username` = '$gsusername' LIMIT 1";

外层是双引号,所以里面在单引号内的变量能够外层是双引号,所以里面在单引号内的变量能够解析解析。。

单引号表明里面的值是个字符串。

这样的拼接方式好处在于易读性。B. $sql = 'SELECT `uid` FROM '.$tablepre.'members WHERE `username` = \''.$gsusername.'\' LIMIT 1';

这样书写的好处是效率会高点,但是语句比较不易读,需要转义字符,稍微繁复。

其他常用拼接:

HTML 时,$sForm = '';3.

程序程序语句段书写规范语句段书写规范

(1) 先按先后依赖关系分顺序,再按功能分隔语句段。

如关于 $sid 有50行语句段A ,前面依赖通用功能定义。

那么通用功能定义语句应在A 段代码之前。

A 段代码,和其他功能段代码,都应该成块状。

,可分为段A、B、C、D、E等。

文件,可分为段

比如500行文件

各段之间用两个空行区隔开

(2) 功能段内部语句段顺序

A. 变量赋初值

B. 确定主要功能逻辑段所用到的变量值

C. 主功能逻辑段

D. 返回、输出或其他操作

(3) 后台管理功能块或其他功能块的基本划分:

A. 用表单的提交元素判断切分开逻辑层与表现层

那么,在代码中通过

01.$pssubmit = $_POST['registersubmit'];

02.if(empty($pssubmit)) {

03.//表现层代码

04.} else {

05.//逻辑层代码

06.}

B. 逻辑层可通过表现层的输入表单元素的name 值来区隔开增删查

改。

,则判断数组$pagender是否有值来进行更改操作

, 则判断数组$padelete是否有值来进行删除操作

……

4.文件目录命名

(1) 空目录索引

除主目录以外的所有目录放置一个1字节的index.htm来防止

服务

来防止服务器目录列表打开时,服务器动态文件脚本被下载。

(2) 常用的目录

config文件夹,常用配置文件

template 模板文件夹

下面有default文件夹,表示程序默认模板

language 语言包文件夹

admin 后台管理目录

include/source 文件夹,主要函数包含文件

image 图片文件夹

js Javascript文件夹

程序接口

应用程序接口

API应用

install安装目录

data 生成文件的临时文件夹,下有几个目录:

文件缓存

缓存

cache文件

log 日志文件

template 模板编译文件缓存

……

MVC目录结构,以Zend Framework为准,这里简略:

index.php 总路由

.htaccess重写规则文件

apps目录下有

config配置文件

models模型文件

controller控制文件

(3) 文件名,小写字母+下划线

扩展名:php文件用.php,模板文件使用.htm,JavaScript

文件使用.js

A.function_xxxx.php 表示函数包含文件

B.class_xxxx.php 表示类文件

C.不带下划线的字母文件名,表示功能主入口文件。

比如 index.php

D.某功能模块下,子功能文件名定义:

模块名_子功能.php,

如:member_register.php表示用户模块的注册功能文件。

language_friend.php表示朋友模块的语言包。

5.注释

有以下几种注释

A. 文档头部说明注释格式

01./***

02.*这是注释

03.*是注释

04.*注释

05.*/

B. 单行注释,必须现在所注释的前一行或简短写在行末

01.//这是注释,下面是变量赋值的例子

02.$inum = 55;

03.

04.$inum = 55; //行末注释

C. 多行注释

01./*

02.这是注释

03.*/

D. 尽量不用 #、///等方式进行注释,

E. 代码书写完以后,冗余调试代码的注释必须删除掉,只剩简洁的

代码功能描述注释

我希望定一个开放性的规则,大家参与进来,并修订他

6.代码提交

所有代码提交必须使用SVN或CVS等版本维护功能提交,不得使用FTP直接上

传。

SVN同步,可以采用远程共享同一台机子的数据库。

或者同步data目录

、字段名、用户名、密码

域名、字段名、用户名、密码也可遵循统一的命名,如统一的数据名、表名、

也可遵循统一的命名,如统一的数据名、表名、域名

等。

然后基本数据库各本地拷贝一份。

我希望定一个开放性的规则,大家参与进来,并修订他,然后希望能达成共

识,签署一些同意书包含:

1。我愿意在我有生之年遵循大家共同制订的PHP规范,并努力推广他,无论

生老病死。。。。富贵贫困。。。

2。我愿意对已有规范进行建议性修订和贡献良好的规范。

3。我愿意遵循讨论出来的结果,哪怕和我的现行语法规范相违背。

4。我愿意在团队中使用此规范。

5。虽然他有很多不完善的地方,但只要他是开放的体系,总有一天他会完善

的,所以我愿意遵循这种相对完善的团队规范。

当然,作为phpchina而言,我会尽量联系国内php团队去组织完善这项规范。

仅此,题记,初摸爬行,望谅。

PHP代码文档规范及phpDoc指南-共享版

PHP文档规范及phpDoc指南

目录 1概述 (3) 2PHPDoc/ phpDocumentor (3) 2.1什么是PHPDoc/phpDocumentor (3) 2.2phpDocumentor1和phpDocumentor2 (5) 2.3phpDocumentor安装 (5) 2.3.1pear安装 (5) 2.3.2phpDocumentor安装 (6) 3使用phpDocumentor生成文档 (6) 3.1phpDocumentor使用说明 (6) 3.2生成指定目录下的文档 (6) 3.3生成指定文件的文档 (6) 3.4指定文档标题 (7) 4PHP注释规范 (7) 4.1需要特别注意的地方 (7) 4.2文件、类注释 (8) 4.3方法注释 (8) 4.4常用tag标签 (9) 4.4.1常用tag列表 (9) 4.4.2@param变量类型列表 (9) 4.5常用的嵌入式{@tag }用法 (10) 4.5.1{@link}用法 (10) 4.5.2{@source}用法 (10) 4.5.3其他inline tag (11) 4.6用法 (11) 5参考资料 (12)

1概述 对于一个开发人员,文档总是最感到头疼的事情之一。而且,很可能你对待文档会采取截然不同的2种态度: ●当你使用别人的代码库的时候,最希望得到的是它的技术文档,尤其是当时间很紧,而你又不得不硬 着头皮去读那些生涩的代码的时候。 ●当写你自己的程序的时候,最不希望做的事情却是给它编写专门的技术文档,你会以种种理由给自己 开脱:我的代码已经足够清晰了,完全不用再为它重新编写文档了…… 为了解决这个问题,文档工具由此产生。按照规范格式编写代码注释,当代码写完了,技术文档也就完成了。良好的代码注释不仅能够帮助开发人员在编写代码时缕清思路,尽可能避免逻辑bug,而且规范的代码注释还能够使用文档工具直接生成API手册。 2PHPDoc/ phpDocumentor 2.1什么是PHPDoc/phpDocumentor PHPDoc(现在项目名改为了phpDocumentor)是PEAR下面的一个非常优秀的模块,它的目标是实现类似javadoc的功能,可以为你的代码快速生成具有相互参照,索引等功能的API文档。

PHP开发规范标准

目录 1、编写目的 (4) 2、整体要求 (5) 3、安全规范 (6) 3.1、包含文件 (6) 3.1.1、命名规则 (6) 3.1.2、存放规则 (6) 3.2、安全规则 (7) 3.3、一些针对PHP的规则 (8) 3.4、其它处理规则 (8) 3.4.1、输入参数处理 (8) 3.4.2、操作大HTML文本 (8) 4、编码规范 (9) 4.1、命名规范 (9) 4.1.1、变量命名 (9) 4.1.2、类命名 (10) 4.1.3、方法或函数 (10) 4.1.4、缩写词 (11) 4.1.5、数据库表名 (11) 4.1.6、数据库字段 (11) 4.2、书写规则 (11) 4.2.1、代码缩进 (12) 4.2.2、大括号{}书写规则 (12) 4.2.3、小括号()和函数、关键词等 (13)

4.2.4、=符号书写 (13) 4.2.5、if else swith for while等书写 (13) 4.2.6、类的构造函数 (13) 4.2.7、语句断行 (14) 4.2.8、数字 (14) 4.2.9、判断 (15) 4.2.10、避免嵌入赋值 (15) 4.2.11、错误返回检测规则 (16) 4.3、程序注释 (16) 4.3.1、程序头注释块 (16) 4.3.2、类的注释 (17) 4.3.3、函数和方法的注释 (18) 4.3.4、变量或者语句注释 (18) 4.4、其它规范 (19) 4.4.1、PHP代码标记 (19) 4.4.2、程序文件名、目录名 (19) 4.4.3、PHP项目通常的文件目录结构 (19) 4.4.4、PHP和HTML代码的分离问题 (20) 4.4.5、PHP项目开发中的程序逻辑结构 (20) 5、特定环境下PHP编码特殊规范 (21) 5.1、变量定义 (21) 5.2、引用的使用 (21) 5.3、变量的输入输出 (22)

php项目开发规范

竭诚为您提供优质文档/双击可除php项目开发规范 篇一:整理了一份比较全面的php开发编码规范. 整理了一份比较全面的php开发编码规范. 目录 1编写目的 2整体要求 3安全规范 3.1包含文件 3.1.1命名规则 3.1.2存放规则 3.2安全规则 3.3一些针对php的规则 3.4其它处理规则 3.4.1对输入参数值进行转义处理 3.4.2操作大html文本 4编码规范 4.1命名规范 4.1.1变量命名

4.1.2类 4.1.3方法或函数 4.1.4缩写词 4.1.5数据库表名 4.1.6数据库字段 4.2书写规则 4.2.1代码缩进 4.2.2大括号{}书写规则 4.2.3小括号()和函数、关键词等 4.2.4=符号书写 4.2.5ifelseswithforwhile等书写 4.2.6类的构造函数 4.2.7语句断行,每行控制在80个字符以内4.2.8不要不可思议的数字 4.2.9true/false和0/1判断 4.2.10避免嵌入式赋值 4.2.11错误返回检测规则 4.3程序注释 4.3.1程序头注释块 4.3.2类的注释 4.3.3函数和方法的注释 4.3.4变量或者语句注释

4.4其他规范(建议) 4.4.1php代码标记 4.4.2程序文件名、目录名 4.4.3php项目通常的文件目录结构 4.4.4php和html代码的分离问题 4.4.5php项目开发中的程序逻辑结构 5特定环境下php编码特殊规范 5.1变量定义 5.2引用的使用 5.3变量的输入输出 1编写目的 为了更好的提高技术部的工作效率,保证开发的有效性和合理性,并可最大程度的提高程序代码的可读性和可重复利用性,指定此规范。开发团队根据自己的实际情况,可以对本规范进行补充或裁减。 2整体要求 技术部php开发规范将参照peaR的规范,基本采用peaR 指定的规范,在其基础上增加、修改或删除部分适合具体开发环境的规范。本规范只针对php开发过程中编码的规范,对于php开发项目中文件、目录、数据库等方面的规范,将不重点涉及。 本规范包含了php开发时程序编码中命名规范、代码缩

PHP代码编写规范

QC 质量管理体系文件 代码编写规范 受控状态:■受控□非受控 发布日期:2006年02月20日 实施日期:2006年02月24日

1. 引言 1.1. 目的 制定本规范是为了能达到以下目的: ●提高程序员工作效率和代码的利用性 ●程序员可以了解任何代码,弄清程序的状况 ●新人可以很快的适应环境 ●防止新接触php的人出于节省时间的需要,自创一套风格并养成终生的习惯 ●防止新接触php的人一次次的犯同样的错误 ●在一致的环境下,人们可以减少犯错的机会 1.2. 适用范围 适用于本公司的所有开发人员,包括数据库、网页及应用程序开发人员,及有关的程序测试人员。 1.3. 引用标准 GB/T 8566-1995 信息技术软件生存期过程 GB/T 8567-1988 计算机软件产品开发文件编写指南 1.4. 术语 GB/T 11457-1995中所使用的术语适用于本规范。

2. 代码编写规则 2.1. 注释 (1)编写代码期间注释要求占程序总量15%以上。 (2)每个模块顶部必须说明模块名称、功能描述、作者等。 (3)每个过程、函数、方法等开头部分必须说明功能、参数、返回值、原数据和目标数据数据结构等等。 (4)变量定义的行末应当对变量给出注释。 (5)程序在实现关键算法的地方应当给出注释 2.2. 变量、函数、过程、控件等命名规则 (1)变量命名采用[作用范围][数据类型][自定义名称]规则定义,要求看到变量名就能直观的看出其范围和数据类型。 (2)函数、过程、方法、事件等命名应尽量做到观其名知其义。 (3)控件的命名采用[控件类型][自定义名]规则定义,要求通过名字能直观看出控件类型。 (4)自定义命名空间规则,要求能顾名思义 2.3. 源代码规则 风格约定:采用缩进的格式保存程序的层次结构。要求能直观的看出循环、判断等层次结构。

养成良好的代码规范

20期BBS小组编码规范 2.适用范围 (1) 3.标准化的重要性和好处 (1) 4.PHP编码规范与原则 (2) 4.1.代码标记 (2) 4.2.注释 (2) 4.3.书写规则 (3) 4.3.1.缩进 (3) 4.3.2.大括号{}、if和switch (3) 4.3.3.运算符、小括号、空格、关键词和函数 (4) 4.3.4.函数定义 (4) 4.3.5.引号 (5) 4.4.命名原则 ..................................................................................................................... 错误!未定义书签。 4.4.1.变量、对象、函数名 (6) 4.4.2.常量 (6) 4.5.变量的初始化与逻辑检查 (6) 4.6.安全性 ......................................................................................................................... 错误!未定义书签。 4.7.兼容性 ......................................................................................................................... 错误!未定义书签。 4.8.代码重用 (7) 4.9.其他细节问题 (7) 4.9.1.包含调用 (7) 4.9.2.错误报告级别8 1.适用范围 如无特殊说明,以下规则要求完全适用于Discuz!项目,同时也可大部分适用于COMSENZ 旗下其他PHP项目。 2.标准化的重要性和好处 当一个软件项目尝试着遵守公共一致的标准时,可以使参与项目的开发人员更容易了解 项目中的代码、弄清程序的状况。使新的参与者可以很快的适应环境,防止部分参与者出于 节省时间的需要,自创一套风格并养成终生的习惯,导致其它人在阅读时浪费过多的时间和 精力。而且在一致的环境下,也可以减少编码出错的机会。缺陷是由于每个人的标准不同,

腾讯PHP开发规范v1.0

海豹平台开发规范v1.0 腾讯科技(深圳)有限公司 *版本信息&保密等级 版本更改日期更改要点说明编制审核批准

V1.0 2014/12/24 新建wilsonwsong V1.1 2014/12/26 修订rusherding 文档保密等级:□机密■内部□公开

目录 海豹平台开发规范V1.0 (1) 1 引言 (5) 1.1定义及缩略语 (5) 1.2参考文档 (5) 1.3目的 (5) 1.4适用范围 (5) 1.5标准化作用 (5) 2 目录结构规范 (6) 2.1框架路径 (6) 2.2应用目录结构 (6) 2.2.1 配置config (7) 2.2.2 控制器controllers (7) 2.2.3 模型models (7) 2.2.4 视图views (8) 2.2.5 国际化messages (8) 2.2.6 组件components (8) 2.2.7 命令commands (8) 2.2.8 临时目录runtime (8) 2.3路径别名 (8) 2.3.1 类型导入 (8) 3 PHP编码规范 (9) 3.1标签 (9) 3.2编码 (9) 3.3注释 (9) 3.3.1 文件注释 (9) 3.3.2 类注释 (10) 3.3.3 方法注释 (10) 3.3.4 属性注释 (11) 3.3.5 其它 (11) 3.4命名规则 (11) 3.4.1 文件 (11) 3.4.2 类 (11) 3.4.3 函数/方法 (12)

3.4.4 变量名 (12) 3.4.5 常量名 (12) 3.5书写规则 (13) 3.5.1 文件 (13) 3.5.2 行 (13) 3.5.3 缩进 (13) 3.5.4 控制结构 (13) 3.5.5 运算符 (16) 3.5.6 引号 (16) 3.5.7 关键词 (17) 3.5.8 函数 (17) 3.5.9 类 (17) 3.5.10 属性 (18) 3.5.11 方法 (18) 4 数据库命名规范 (20) 4.1命名规范 (20) 4.2实体命名 (20) 4.2.1 前缀命名 (20) 4.2.2 后缀命名 (21) 4.3字段命名 (21) 4.3.1 后缀命名 (22) 4.4字段类型 (22) 4.4.1 数值类型 (22) 4.4.2 字符类型 (23) 4.4.3 时间类型 (23) 4.4.4 ENUM&SET (23) 4.4.5 LOB 类型 (23) 4.5表结构设计 (24) 4.5.1 适度冗余 (24) 4.5.2 尽量使用NOT NULL (24) 4.5.3 索引 (24) 5 附件 (24) 5.1附录一:MYSQL保留字 (24)

代码风格规范

代码风格规范 本篇规范是PSR-1基本代码规范的继承与扩展。 本规范希望通过制定一系列规范化PHP代码的规则,以减少在浏览不同作者的代码时,因代码风格的不同而造成不便。 当多名程序员在多个项目中合作时,就需要一个共同的编码规范,而本文中的风格规范源自于多个不同项目代码风格的共同特性,因此,本规范的价值在于我们都遵循这个编码风格,而不是在于它本身。 关键词“必须”("MUST")、“一定不可/一定不能”("MUST NOT")、“需 要”("REQUIRED")、“将会”("SHALL")、“不会”("SHALL NOT")、“应该”("SHOULD")、“不该”("SHOULD NOT")、“推荐”("RECOMMENDED")、“可以”("MAY")和”可选“("OPTIONAL")的详细描述可参见RFC 2119。 1. 概览 ?代码必须遵循PSR-1中的编码规范。 ?代码必须使用4个空格符而不是tab键进行缩进。 ?每行的字符数应该软性保持在80个之内,理论上一定不可多于120个,但一定不能有硬性限制。 ?每个namespace命名空间声明语句和use声明语句块后面,必须插入一个空白行。 ?类的开始花括号({)必须写在其声明后自成一行,结束花括号(})也必须写在其主体后自成一行。 ?方法的开始花括号({)必须写在函数声明后自成一行,结束花括号(})也必须写在函数主体后自成一行。

?类的属性和方法必须添加访问修饰符(private、protected以 及public),abstract以及final必须声明在访问修饰符之前, 而static必须声明在访问修饰符之后。 ?控制结构的关键字后必须要有一个空格符,而调用方法或函数时则一定不能有。 ?控制结构的开始花括号({)必须写在声明的同一行,而结束花括号(})必须写在主体后自成一行。 ?控制结构的开始左括号后和结束右括号前,都一定不能有空格符。1.1. 例子 以下例子程序简单地展示了以上大部分规范: $b) { $foo->bar($arg1); } else { BazClass::bar($arg2, $arg3); } } finalpublicstaticfunction bar() { // method body }

Php编程规范

PHP编程规范 (试行)

前言 为规范PHP开发的编码风格,提高开发效率和降低开发人员的时间成本,建立统一的PHP开发标准体系,依据国际、国内相关标准、法规,参照国际、国内通行的职业技能标准制定本规范。 本规范由大连市经济和信息化委员会提出并归口。 本规范项目召集单位: 本规范项目专家组: 本规范主要起草单位: 本规范起草人: 本规范于二○一○年十一月四日首次发布。

目录 1. 适用范围 (5) 2. 定义和术语 (5) 2.1 PHP语言 (5) 2.2 程序代码 (5) 3. 代码编写格式 (5) 3.1 代码标记 (5) 3.2 缩进 (5) 3.3 长度 (5) 3.4 行宽 (6) 3.5 间隔 (6) 3.6 对齐 (6) 3.7 括号 (6) 4. 注释 (7) 4.1 预注释 (7) 4.2 类、接口注释 (8) 4.3 函数方法注释 (8) 4.5 其它注释 (9) 5. 命名 (9) 5.1 文件 (9) 5.2 变量 (9) 5.3 常量 (10) 5.4 类、接口 (10) 5.5 方法、函数 (10) 6. 声明 (10)

6.1 类、接口 (10) 6.2 方法 (10) 6.3 变量 (11) 6.4 常量 (11) 6.5 其他 (11) 7. 表达式与语句 (12) 7.1 控制语句 (12) 7.2 循环语句 (12) 8. 错误与异常 (13) 8.1 已检查异常与运行时异常 (13) 8.2 异常错误提示设置 (13) 9. 测试与 BUG 跟踪 (13) 9.1 测试基本原则 (13) 9.2 BUG 跟踪和缺陷处理 (13) 10. 性能与安全 (13) 10.1 输入与输出 (13) 10.2 针对 PHP.INI 的规则 (14) 10.3 SQL 语句处理规则 (14) 11. 其它 (14) 12. 附录 (14) 12.1 注释模板 (14)

PHP代码规范

PHP规范草案 Ver.0.0.1 1.变量命名与类的命名 (1) 类型 + 变量名: $inum 基于PHP语言弱类型的特点,以匈牙利命名法为参考,但国人不习惯大写字母,所以纯小写,为基本规范。 字符+命名的方式,比如 $susername 一个类型字符 一个类型 s代表字符串,i代表整型,a代表数组,o代表对象, r代表资源, b布尔型,例子: 01.$inum = 55; 02.$itotal = 110; 03.$susername = 'root'; 04.$spassword = '123456'; 05.$rlink =mysql_connect('localhost', 'root', '123456'); 06.$odb = new dbstuff(); 07.$anumber = array(1, 2, 3, 4, 5); 特殊常用的少数变量,可以不用书写前缀,比如 $uid, $sid, $sql, $row, $db 程序员的类型 的类型这种书写方式缺点:略需一点适应成本,但习惯后对程序员 这种书写方式缺点:略需一点适应成本,但习惯后对 开发和代码阅读调试意义重大。 和代码阅读调试意义重大。 思维有帮助,对团队开发 思维有帮助,对团队 设计字段类型及长度字符串类型一般没有 数据库设计字段类型及长度字符串类型一般没有 (2) 常用的命名及 常用的命名及数据库 默认值,而非主键的数值类型,非空,默认值为0。 username 用户名, char(16) password 密码, char(32) email 邮件, char(50) 时间,,int(10) dateline时间 register 注册 login 登陆 adminid 管理员id,某某id的命名,采用名字+id的方式, 比如groupid, 常用的id可用缩写替代:比如

基于PHP的格式化HTML代码功能的设计与实现

龙源期刊网 https://www.doczj.com/doc/3414598543.html, 基于PHP的格式化HTML代码功能的设计与实现 作者:罗良夫张丽 来源:《电脑知识与技术》2017年第30期 摘要:随着互联网技术的发展,大量的信息系统采用了B/S架构,从而产生了大量的HMTL页面文件,为了解决大量HTML代码不易维护与管理的问题,采用了PHP作为主要技术开发了格式化HTML代码的功能,该功能可以准确识别单目及双目HTML标记,且具有良好的扩展性,能够支持HTML5及其他动态网页语言标签的识别及格式化。 关键词:PHP;HTML;格式化;标记 中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2017)30-0116-02 Design and Implementation of Formatted HTML Code Function Based on PHP LUO Liang-fu1, ZHANG Li2 (1.wuhan Guanggu Vocational College, Wuhan 430073, China; 2. Hubei Traffic Vocational and Technical College, Wuhan 430079, China) Abstract: With the development of Internet technology, a large number of information systems using B/S architecture, resulting in a large number of HMTL pages, in order to solve a large number of HTML code is not easy to maintenance and management problems, using PHP as the main technology in the development of the HTML code formatting function, the function can accurately identify the monocular and binocular HTML markers, and has extended well, the identification and the format can support HTML5 and other dynamic web language tags. Key words: PHP; HTML; format; sign 1 背景 互联网时代的到来,促使HTML网页技术的应用变得非常广泛,目前几乎所有的应用信息系统都采用了B/S结构,一般中小型公司的页面可能达到几十个,而大型网站的页面更是多达上百个,信息系统页面的开发经常出现:开发周期长、开发人员多、代码不规范、代码不易管理等问题,导致后期难以进行扩展升级和维护,所以HTML代码的格式规范化问题显得非常总要,为了能有效解决HTML代码规范化问题,本文采用了PHP语言来实现格式化HTML 代码的功能。

PHP语言规范文档

PHP语言编写规范 第1章命名规范 1.1变量 1.1.1全局变量 全局变量使用$g_开头,如$g_data_list。 1.1.2 一般变量 一般的变量使用小写字母命名,单词之间使用下划线分隔。 变量名字应该使用名词或者形容词+名词的方式。如$value,$new_value。 1.1.3 临时变量 不要将在循环中频繁使用的临时变量如$i,$j等用于其它用途。 1.2 函数 函数采用小写字母命名,单词之间使用下划线分隔。 函数的命名建议使用动词+名词的方式,如get_user_img。 完成一组功能的函数放到一个文件中,存放函数的文件采用function_name.func.php命名。

1.3 类 类使用英文的大小写来分隔单词,包括首个单词,所有单词的首字母大写,如PageManager; 在类中,方法放到属性定义前边、公用方法放到专用方法前边; 一般情况下,一个类对应到一个文件; 当一些类关系紧密时,可以存放在一个文件中; 存放类的文件采用ClassName.class.php方式命名。 1.4 方法 方法使用英文的大小写来分隔单词,除首个单词外,其他单词的首字母大写,如getCurrentPage();不要采用不常用的缩写,如where2go(); 使用常用的缩写时,只大写首字母,如getHtml()。 第2章版式规则 2.1 语义分隔 各个函数、方法之间应该采用空行间隔;

同一个函数中联系紧密的语句之间可以不换行,其他情况需要换行。 2.2 空格规则 2.2.1 逻辑运算符前后必须加空格 正确 $a == $b; 错误 $a==$b; $a ==$b; 备注 - 正确 $a++; $a–; 错误 $a ++; $a –; 备注加一减一运算符不能加空格。 2.2.2 多个参数分隔时必须加空格 正确 $g_pro , $g_user , g_show; get_db_info($host, $user, $passwd);

php,psr,4,编码规范

竭诚为您提供优质文档/双击可除 php,psr,4,编码规范 篇一:php开发规范psR-1 「psR规范」psR-1基础编码规范基本代码规范 本篇规范制定了代码基本元素的相关标准,以确保共享的php代码间具有较高程度的技术互通性。 关于「能愿动词」的使用 为了避免歧义,文档大量使用了「能愿动词」,对应的解释如下: 必须(must):绝对,严格遵循,请照做,无条件遵守;一定不可(mustnot):禁令,严令禁止;应该(should):强烈建议这样做,但是不强求;不该(shouldnot):强烈不建议这样做,但是不强求;可以(may)和可选(optional):选择性高一点,在这个文档内,此词语使用较少; 1.概览

php代码文件必须以 命名空间以及类必须符合psR的自动加载规范:psR-4中的一个;类的命名必须遵循studlycaps大写开头的驼峰命名规范;类中的常量所有字母都必须大写,单词间用下划线分隔; 方法名称必须符合camelcase式的小写开头驼峰命名规范; 2.文件 2.1.php标签 php代码必须使用长标签或短输出标签;一定不可使用其它自定义标签。 2.2.字符编码 php代码必须且只可使用不带bom的utF-8编码。 2.3.副作用 一份php文件中应该要不就只定义新的声明,如类、函数或常量等不产生副作用的操作,要不就只书写会产生副作用的逻辑操作,但不该同时具有两者。「副作用」(sideeffects)一词的意思是,仅仅通过包含文件,不直接声明类、函数和常量等,而执行的逻辑操作。 副作用」包含却不仅限于:

生成输出直接的require或include连接外部服务修改ini配置抛出错误或异常修改全局或静态变量 读或写文件等 以下是一个反例,一份包含「函数声明」以及产生「副作用」的代码://「副作用」:修改ini配置ini_set(error_reporting,e_all); //「副作用」:引入文件 include"file.php"; //「副作用」:生成输出 echo"\n"; //声明函数 functionfoo(){ //函数主体部分 } 下面是一个范例,一份只包含声明不产生「副作用」的代码: //声明函数 functionfoo(){

PHP开发规范说明

1目的 2代码规范要求 3程序设计原则 3.1Model层 所有与数据库表本身操作方法,都封装在自己的Model类中,不单独在外提供封装。 每个Model基于ThinkPHP都已经封装好了一套DB操作方法。 3.1.1基类 3.1.1.1Model ThinkPHP原生Model基类。不能修改。 在基于单表的数据CURD操作,使用Model原生成的功能。如: 3.1.1.1.1Insert $role_user_model->add(array("role_id" =>$role_id, "user_id" =>$uid, "oem_code" => parent::oem_code())); 3.1.1.1.2Update if (IS_POST) { $_POST['id'] = get_current_admin_id(); $_POST["oem_code"] = parent::oem_code(); $create_result = $this->users_model->field("user_login,user_email,last_login_ip,last_login_time,create_time,user_ activation_key,user_status,role_id,score,user_type,oem_code", true)//排除相关字段 ->create(); if ($create_result) { if ($this->users_model->save() !== false) { $this->success("保存成功!"); } else { $this->error("保存失败!"); } } else { $this->error($this->users_model->getError()); } } 3.1.1.1.3Delete $id = intval(I("get.id")); if ($this->users_model->where("id=$id")->delete() !== false) { M("RoleUser")->where(array("user_id" =>$id, "oem_code" => parent::oem_code()))->delete(); $this->success("删除成功!"); } else { $this->error("删除失败!"); }

PHP书写规范

PHP编码规范时间:2010-01-20 13:06来源:未知作者:coder 点击:252次一、规范前言篇标准化不是特殊的个人风格,它让程序员可以了解任何代码,弄清程序的状况;新人可以很快的适应环境;防止新接触php的人一次次的犯同样的错误;在一致的开发环境下,可以减少人们犯错的机会。本规范的标准在绝对多数应用上为仿照java技术体 一、规范前言篇 标准化不是特殊的个人风格,它让程序员可以了解任何代码,弄清程序的状况;新人可 以很快的适应环境;防止新接触php的人一次次的犯同样的错误;在一致的开发环境下,可以减少人们犯错的机会。本规范的标准在绝对多数应用上为仿照java技术体系,因为java技术体系以其众多成功的案例成为大部分计算机应用层的工业标准,此外便于日后 公司向java技术体系转型。 二、命名定义篇 局部变量命名 使用英文名词、动词,以大写字母作为单词的分隔,其他的字母均使用小写,单词的 首个字母使用小写,不使用下划线,例: $repeatCount = ''; $delUserSql = ''; 全局常量命名 使用英文名词、动词,所有字母都使用大写,以下划线分隔每个单词,例: define( 'WEBSITE_NAME', '名称' ); define( 'WEBSITE_URL', '地址' ) 数组变量命名 使用英文名词、动词,以大写字母作为单词的分隔,其他的字母均使用小写,单词的首 个字母使用小写,不使用下划线,以字符串Array为后缀,例: $scopeArray = array(); $bookIdArray = array(); 静态变量命名 使用英文名词、动词,以大写字母作为单词的分隔,其他的字母均使用小写,单词的首 个字母使用小写,不使用下划线,以字符串Static为后缀,例:

整理了一份比较全面的PHP开发编码规范.

整理了一份比较全面的PHP开发编码规范. 目录 1编写目的 2整体要求 3安全规范 3.1包含文件 3.1.1命名规则 3.1.2存放规则 3.2安全规则 3.3一些针对PHP的规则 3.4其它处理规则 3.4.1对输入参数值进行转义处理 3.4.2操作大HTML文本 4编码规范 4.1命名规范 4.1.1变量命名 4.1.2类 4.1.3方法或函数 4.1.4缩写词 4.1.5数据库表名 4.1.6数据库字段 4.2书写规则 4.2.1代码缩进 4.2.2大括号{ }书写规则 4.2.3小括号( )和函数、关键词等 4.2.4=符号书写 4.2.5 if else swith for while等书写 4.2.6类的构造函数 4.2.7语句断行,每行控制在80个字符以内 4.2.8不要不可思议的数字 4.2.9 true/false和0/1判断 4.2.10避免嵌入式赋值 4.2.11错误返回检测规则

4.3程序注释 4.3.1程序头注释块 4.3.2类的注释 4.3.3函数和方法的注释 4.3.4变量或者语句注释 4.4其他规范(建议) 4.4.1 php代码标记 4.4.2程序文件名、目录名 4.4.3 PHP项目通常的文件目录结构 4.4.4 PHP和HTML代码的分离问题 4.4.5 PHP项目开发中的程序逻辑结构 5特定环境下PHP编码特殊规范 5.1变量定义 5.2引用的使用 5.3变量的输入输出 1编写目的 为了更好的提高技术部的工作效率,保证开发的有效性和合理性,并可最大程度的提高程序代码的可读性和可重复利用性,指定此规范。开发团队根据自己的实际情况,可以对本规范进行补充或裁减。 2整体要求 技术部php开发规范将参照PEAR的规范,基本采用PEAR指定的规范,在其基础上增加、修改或删除部分适合具体开发环境的规范。本规范只针对PHP开发过程中编码的规范,对于PHP开发项目中文件、目录、数据库等方面的规范,将不重点涉及。 本规范包含了PHP开发时程序编码中命名规范、代码缩进规则、控制结构、函数调用、函数定义、注释、包含代码、PHP标记、文件头的注释块、CVS标记、URL样例、常量命名等方面的规则。 3安全规范 3.1包含文件 3.1.1命名规则 提取出来具有通用函数的包含文件,文件后缀以.inc来命名,表明这是一个包含文件。 如果有多个.inc文件需要包含多页面,请把所有.inc文件封装在一个文件里面,具体到页

PHP程序编码规范

. 程序编码规范 1、基本的编码规范,与国际接轨,见附录The PHP Coding Standard (中文版| 英 文版) ; 2、新的程序/项目的服务器配置中,php.ini关闭error_reporting, register_globals, magic_gpc, session.auto_start,需要查看错误信息的在程序中设置,但正式上线的项目要保证及时关闭; 3、新的程序/项目都采用UTF-8编码,包括数据库、程序(无BOM)和页面(无BOM)等; 4、新的程序/项目都使用公司开发框架SimplePHP; 5、新的大中型程序/站点都要经过压力测试调整改进后上线; 6、使用统一的IDE,保证团队的编码格式和一些细节的统一,目前公司统一使用;ZendStudio/Zend Studio for Eclipse 7、原则上不允许修改Simple框架核心代码,即SimplePHP目录下的所有文件,如有需要,请通知框架维护升级人员评估处理,Simple框架在下一步计划中将大幅度调整改进,以满足开发需求; 8、目录名只能使用英文字母加阿拉伯数字及下划线的组合字符串,而一些重要的并且用户能直接访问到的后台管理目录不能直接使用像admin,tool之类的常用单词来命名。 9、特定目录统一命名:模板目录views,语言包目录langs,配制目录config。目录名统一全小写命名。10、文件名(包括成生的静态页面,缓存等文件)尽量使用小写字母命名,必要时用下划线连接,但不能出现空格。框架控制器文件必须保证第一个字母为大写,其它均为小写,以保证大小写链接均可正常使用; 11、尽量使用公共的类库(公共的类库收集整理在进行中,并且将不断补充完善); 12、站点/项目主程要负责编写、补充站点/项目文档(包括站点/项目说明,系统架构说明,目录/文件结构说明,接口说明,更新历史,手册文档);开发文档统一存放在项目的根目录(不是WEB根目录)下doc目录的dev目录。而项目需求等非技术性的文档放在doc目录下的pro目录。 ;. . 数据库表文档规范: 模块名称:(如用户表) 表名(如mmosite_user)

PHP代码编写规范分解

PHP代码编写规范 一、编辑器设置 (1)使用Tab缩进,不要使用空格 鉴于很多编辑器在保存文件时会自动清除用于缩进的空格,所以我们一律使用Tab键进行缩进。 (2)UNIN文件格式 请将编辑器设置对所有程序使用UNIX格式保存,不要使用Win32或者Mac 的格式。例如,EditPlus里面Document->File Format(CR/LF)->Unix 。对于windows格式文件,以Ctrl + M结束(vim下为^M),需要过滤掉:$text = strtr($text, "\x0D", ""); 二、命名设置 1、公共库名称空间 TPLIB,Tencent PHP Library 2、变量命名 (1)所有字母都使用小写 (2)首字母根据变量值类型指定 整数I、浮点数f、字符串s、布尔值b、数组a、对象o、资源r、混合类型m (3)使用?_?作为每一个词的分界 例如: $i_age_max = 10; $f_price = 22.5; $s_name =…harry?; $b_flag = true; $a_price = array(); $o_object = new class(); $r_file = fopen();

$m_var = array_combine($a_name, $a_flag); 3、类命名 (1)使用大写字母作为词的分隔,其他的字母均使用小写,即驼峰格式。 (2)名字的首字母使用大写 (3)不要使用下划线(?_') (4)interface接口最好使用大写字母I,并以Interface结尾 例如: class NameOneTwo class Name interface IExampleInterface () 4、方法命名 (1)使用大写字母作为词的分隔,其他的字母均使用小写 (2)名字的首字母使用大写,声明为“private” 或“protected” 的,使用?_?为前缀 (3)不要使用下划线(?_') (4)与类命名一致的规则 (5)对象的访问器总是以“get” 或“set” 为前缀,当使用设计模式如单态模式(singleton)或工厂模式(factory),方法的名字应当包含模式的名字,这样容易从名字识别设计模式。 例如: class NameOneTwo{ public function DoIt() {}; protect function _HandleError() {}; private function _SayHello() {}; } 5、类属性命名 (1)属性名前缀应以属性值类型指定(具体参照变量命名规则) (2)前缀后采用与类命名一致的规则

PHP实验1-10(附代码)

PHP编程教学实训任务 实训任务1-10 倪老师编制

目录 实验一HTML语言基础 (1) 实验二PHP环境构建 (4) 实验三PHP程序组成 (15) 实验四PHP数据类型和编程规范 (18) 实验五PHP表达式应用之一 (21) 实验六PHP表达式应用之二 (26) 实验七PHP表达式应用之三 (30) 实验八PHP条件控制语句 (34) 实验九PHP循环控制语句 (38) 实验十PHPswitch语句 (42)

实验一 HTML语言基础 一、项目名称:HTML语言 二、实训目的:直接使用html设计表格和表单; 三、实训内容: 1、用记事本设计表格网页 2、用记事本设计表单网页

四、实训要求: 把设计后的文件压缩并保存,文件名格式“班级+学号(两位)+姓名”,发送到老师的邮箱。 答案: 1答案、 原代码 表格制作

常用的营销网站
网站名称 域名 logo
阿里爸爸 https://www.doczj.com/doc/3414598543.html,
淘宝网 https://www.doczj.com/doc/3414598543.html,
百度 https://www.doczj.com/doc/3414598543.html,
谷哥 https://www.doczj.com/doc/3414598543.html,

PHP 项目开发规范文档

PHP 项目开发规范文档 1.文件及文件目录规范 1.1命名规范 文件名以全部小写的英文字母组成, 建议使用英文单词, 必要时使用复数; 多个单词之间以下划线隔开, 类文件建议以类的名字的小写命名;则这不仅仅是PHP文件,包括整个项目的文件. 例: 一般常见文件: common.php, config.php login.php, user_info.htm, import_categories.php 类文件 class.accounts.php => Class Accounts {……}; 1.2目录结构规范 目录的命名同文件名一样,英文字母,全部小写. 例: /lib 常用PHP文件,库文件 /images 页面上使用的背景图或图标文件存在目录 /js 页面上使用的js文件 /languages 语言包文件 /templates 模板文件存在目录 /cache 站点数据存储目录, 比如像日志, 附件, 配置文件等,均可以创建子目录存放在这该目录下; 2.变量规范 2.1变量命名 2.1.1 form域命名及URL参数名命名 考虑到PHP的数组下标(key)的应用是区分大小写的, 所以强制全部采用小写字母组成, 多词组成时可以用减号隔开. 2.1.2 变量命名 $ + 变量类型_变量命名作为规则, 变量命名采用英文单词,多词组成时用下划线连接;变量类型不一定强制! 必须用小写. 例: $table_name PHP常用的类型: String str 例: $str_username, $str_password,$password Integer int 例: $int_id,$id Float flt 例: $flt_money,$money Double dbl 例: $dbl_pie,$pie Boolean bln 例: $bln_isset Array arr 例: $arr_data,$data PHP 用于全局变量类型: $Global 即全局变量的配置变量,全局变量首字母用大写 PHP 常量首全部用大写defined('IN_OLCMS') 2.2 变量的初始化 PHP本身并没有对初始化变量的名字. 所以我们能做的就是给一个未使用的赋一个空值. 例: $arrData = array(); $intQuality = 0; 3.函数与类规范 3.1函数的命名 下划线连接的组合规则, 例init(), list_category() 3.2类的命名规范

相关主题
文本预览
相关文档 最新文档