### PHP开发规约知识点 #### 1. PHP 文件格式与编码规范 - **闭合标签**: 当PHP文件仅包含PHP代码时,不建议使用闭合标签`?>`。这样做可以防止在输出中意外插入不必要的尾部空白。 - **缩进**: 使用空格而非制表符进行缩进,每个缩进使用两个空格。 - **PHP代码边界**: PHP代码必须始终使用标准的全形式标签`<?php` 和 `?>` 包围。不允许使用短标签形式如`<?`。 #### 2. 命名规则 - **类命名**: 类名只允许使用英文字母和数字,不能包含下划线。如果类名由多个单词组成,则每个单词首字母应大写,这种风格通常称为“驼峰命名法”(Camel Case)。 - **接口命名**: 接口类遵循与普通类相同的命名规则,但其名称需要以"Interface"结尾。 #### 3. 文件命名 - **允许字符**: 文件名只能使用英文字母和数字,不允许使用下划线和空格。 - **扩展名**: 所有包含PHP代码的文件都必须以`.php`作为扩展名。 - **特殊文件命名**: 如果文件包含类定义,则文件名应在扩展名`.php`之前加上`.class`后缀;如果文件包含函数则不需要添加此后缀。 #### 4. 函数和方法命名 - **命名规则**: 函数名只允许使用英文字母和数字,不能包含下划线,并且必须以小写字母开头。如果函数名由多个单词组成,则每个单词的首字母应大写。 - **示例**: `filterInput()`, `getElementById()`, `widgetFactory()`等。 #### 5. 变量命名 - **命名规则**: 变量名只能使用英文字母和数字,不允许使用下划线。若变量为类的私有或受保护成员,则变量名的首个字符应为单个下划线。 - **数据类型接头词**: 根据变量存储的数据类型,在变量名前使用特定的接头词。 - `Array`: 接头词`aa`,如`aastrCustomer` - `Double`: 接头词`dd`,如`ddTolerance` - `Integer`: 接头词`Ii`,如`IiQstCnt` - `Object`: 接头词`obj`,如`objFSO` - `String`: 接头词`ss`,如`ssUserName` #### 6. 定义常量 - **命名规则**: 常量名可以包含英文字母、数字和下划线,但所有字符都必须是大写。为了提高可读性,常量名中的各个单词之间应用下划线分隔。 #### 7. 编码风格 - **提高可读性**: 在每个逗号分隔后的值之后添加一个空格。 ```php $sampleArray = array(1, 2, 3, 'User', 'Admin'); ``` - **一个文件一个类**: 每个文件定义一个类。 - **操作符前后空格**: 在逻辑操作符(如`==`, `&&`等)前后添加一个空格。 - **属性与方法的声明顺序**: 在类中先声明公共方法(`public`),然后是受保护方法(`protected`),最后是私有方法(`private`)。 - **括号的位置**: 在声明类、方法及函数时,将括号放在独立的一行。 #### 8. 注释规范 - **模板文件头部**: 模板文件顶部需包含功能描述、作者姓名、日期以及修改记录。 ```html <!— 功能説明:「新着情報管理の情報変更ページテンプレート」 作者:名前 日付:2011/09/20 修正履歴:日付 修正者 修正説明 ------------------------------------------ --> ``` - **类文件头部**: 类文件顶部需包含功能描述、作者姓名、日期以及修改记录。 ```php <?php /** * 功能説明:新着情報管理アクション * * 作者:名前 * 日付:2011/09/20 * 修正履歴:日付 修正者 修正説明 * ------------------------------------------ */ ``` - **函数头部**: 函数顶部需包含函数名、功能描述。 ```php <?php /** * 関数名:[executeIndex] * 関数機能:新着情報 */ ``` 以上为PHP开发规约的主要内容,这些规定旨在提高代码的可读性和一致性,有助于团队协作和维护。
- 粉丝: 1
- 资源: 4
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (仅限 Vue 2)将 Vue 组件包装为 Web 组件,自定义元素 .zip
- 非常漂亮的颜色选择器.zip
- 集成axios.zip
- 集成 vuex 的原生 websocket.zip
- 针对 Google Places API 的 Vue.js 自动建议组件 .zip
- 通过动画跨路线共享组件.zip
- 适用于您的 Vue.js 项目的便捷 Moment.js 过滤器 .zip
- 适用于 Vue.js 的轻量级所见即所得 HTML 编辑器.zip
- 适用于 Vue.js 2.0 的表格(带有树形网格)组件 (其样式扩展了@iview).zip
- 适用于 Vue.js 2-3 的移动端图片文件输入组件,具有图像预览、拖放、EXIF 方向等功能.zip