PHP开发规范手册之PHP代码规范详解


Posted in PHP onJanuary 13, 2011

涉及多个方面,比如PHP代码规范、PHP文件命名规范、网站开发流程、网站安全与维护等。
作为PHP开发规范的开篇,我从一个纯PHP开发者的角度来说说我所认为的PHP代码规范,主要从PHP目录框架结构、PHP代码书写规范、PHP文件命名规范三个角度来阐述,希望对PHP入门学习者有所帮助。
合理建设PHP目录框架结构

我们知道在使用PHP进行网站开发之前,我们需要建设网站的目录结构,网站目录框架结构设计得合理规范,不但有利于网站开发,而且对SEO,网站推广都有好处。

一般最基础的PHP网站结构涉及图片、CSS文件、JS文件、第三方组件、管理后台等内容,相对应的,基础的PHP目录框架结构也涉及这些内容,这些目录命名时也有规范,比如

图片目录:images或者pic

CSS目录:css

JS目录:js

第三方组件目录:libs或者include,下一级目录可以根据具体的组件名定义目录名

管理目录:一般都是admin,单位了安全起见,你可以另起一个目录名或者对admin目录设置密码保护。如何对访问目录设置密码保护?

特别提醒:对于网站的框架目录结构,事先要做好规划,为了对搜索引擎友好便于网站推广,建议目录结构层次不要太深,二三级目录结构就可以了。

另外如果你采用模板,可以创建模板目录,比如将目录命名为tpl,如果使用第三方模板引擎,比如smarty,你可以根据需要自行决定是否要另设目录。PHP基础教程:Smarty安装教程

对于中等规模的网站,你也可以根据网站功能划分网站目录框架结构,比如按照频道等。

PHP文件命名规范

良好的PHP文件命名规范也是PHP开发规范的要素,有助于记忆,便于管理,PHP网站程序文件的命名也有一定的规则,比如

PHP网站首页文件命名规范:index.php或index.html

CSS文件命名规范:主CSS文件命名为style.css,另外你也可以针对具体的模块或者频道命名,比如用于用户的CSS文件,可以定义为user_style.css或者u_style.css

JS文件命名规范:主JS文件命名为main.js或major.js,其他的JS文件命名,你可以根据具体的页面或者特定的对象命名,比如首页JS文件可以命名为index.js,服务于用户登录的JS文件可以命名为user_login.js等。

网站配置文件命名规范:config.php或default_config.php等

文件命名特别提醒:在对PHP文件进行命名时考虑到可移植性,一律请使用小写命名,另外与网站目录名命名一样,文件命名时可以采用两种方式,一种可以使用拼音命名具体的文件,一种可以使用简单明了的英语单词命名文件,切勿随便命名,导致今后维护混乱。

PHP代码书写规范

良好的PHP代码规范,有助于PHP入门学习者从你写的PHP代码中受益,也有助于你今后的代码维护。

1、对于所写的PHP代码,添加必要的代码注释,同时代码注释要规范,更多基础PHP代码书写规范,请参考PHP基本语法教程

2、保持良好的PHP代码书写规范,合理使用缩进,保持代码美观。

3、使用赋值符时变量名、赋值符、值之间以空格分隔,即

<? 
$leapsoulcn = "欢迎访问PHP网站教程网,此节主要介绍PHP开发规范之PHP代码规范"; 
?>

4、在书写if、switch、函数代码时,务必保持大括号匹配,即
<? 
if(){ 
...... 
} 
?>

或者
<? 
if() 
{ 
...... 
} 
?>

5、命名变量名或者函数名时注意代码书写规范,可以使用拼音、英语单词、缩写等形式,推荐以英语单词作为PHP代码命名规范,对于两个单词以上的以下划线连接或者其中一个单词首字母大写的形式,即
<? 
$web_name = "PHP网站开发教程网"; 
$webUrl = "https://3water.com"; 
function userLogin() 
{ 
} 
?>

以上就是基础的PHP代码规范,对于PHP初学者学习PHP会有所帮助。养成良好的PHP代码规范会让开发者受益一生。

至此,PHP开发规范手册之PHP代码规范就介绍完了,良好的网站框架目录构建能力、PHP文件命名规范和PHP代码书写规范需要自己在不断的开发中积累和养成,同时这些开发规范也有助于伙伴之间的合作,有助于PHP入门学习者学习你的PHP代码。

PHP 相关文章推荐
php中数据的批量导入(csv文件)
Oct 09 PHP
关于PHP中操作MySQL数据库的一些要注意的问题
Oct 09 PHP
用文本文件制作留言板提示(下)
Oct 09 PHP
php仿discuz分页效果代码
Oct 02 PHP
php中的Base62类(适用于数值转字符串)
Aug 12 PHP
php和jquery实现地图区域数据统计展示数据示例
Feb 12 PHP
php面向对象中的魔术方法中文说明
Mar 04 PHP
php结合curl实现多线程抓取
Jul 09 PHP
学习PHP的数组总结【经验】
May 05 PHP
PHP实现小偷程序实例
Oct 31 PHP
php验证码生成器
May 24 PHP
PHP JSON格式数据交互实例代码详解
Jan 13 #PHP
PHP学习笔记之二 php入门知识
Jan 12 #PHP
php算开始时间到过期时间的相隔的天数
Jan 12 #PHP
php数据库密码的找回的步骤
Jan 12 #PHP
重新封装zend_soap实现http连接安全认证的php代码
Jan 12 #PHP
php 变量未定义等错误的解决方法
Jan 12 #PHP
兼容性比较好的PHP生成缩略图的代码
Jan 12 #PHP
You might like
令PHP初学者头疼十四条问题大总结
2008/11/12 PHP
PHP读取文件内容后清空文件示例代码
2014/03/18 PHP
PHP合并数组+号和array_merge的区别
2015/06/25 PHP
Linux平台PHP5.4设置FPM线程数量的方法
2016/11/09 PHP
JavaScript入门教程(11) js事件处理
2009/01/31 Javascript
原生js写的放大镜效果
2012/08/22 Javascript
JS打开新窗口防止被浏览器阻止的方法
2015/01/03 Javascript
jQuery对象与DOM对象之间的相互转换
2015/03/03 Javascript
JavaScript获取浏览器信息的方法
2015/11/20 Javascript
JS函数arguments数组获得实际传参数个数的实现方法
2016/05/28 Javascript
老生常谈JavaScript数组的用法
2016/06/10 Javascript
jQuery使用Layer弹出层插件闪退问题
2016/12/22 Javascript
jQuery的$.extend 浅拷贝与深拷贝
2017/03/08 Javascript
理解nodejs的stream和pipe机制的原理和实现
2017/08/12 NodeJs
稍微学一下Vue的数据响应式(Vue2及Vue3区别)
2019/11/21 Javascript
微信小程序如何加载数据库真实数据的实现
2020/03/04 Javascript
Vue通过Blob对象实现导出Excel功能示例代码
2020/07/31 Javascript
Vue通过provide inject实现组件通信
2020/09/03 Javascript
利用Fn.py库在Python中进行函数式编程
2015/04/22 Python
python+Django+apache的配置方法详解
2016/06/01 Python
flask入门之表单的实现
2018/07/18 Python
基于django ManyToMany 使用的注意事项详解
2019/08/09 Python
对Django中内置的User模型实例详解
2019/08/16 Python
Python树莓派学习笔记之UDP传输视频帧操作详解
2019/11/15 Python
pytorch之ImageFolder使用详解
2020/01/06 Python
如何将PySpark导入Python的放实现(2种)
2020/04/26 Python
用python监控服务器的cpu,磁盘空间,内存,超过邮件报警
2021/01/29 Python
英国现代绅士品牌:Hackett
2017/12/17 全球购物
生物制药自我鉴定
2014/01/25 职场文书
小学教师节活动方案
2014/01/31 职场文书
个人委托书怎么写
2014/04/04 职场文书
纪念一二九运动演讲稿
2014/09/16 职场文书
财务科长个人对照检查材料
2014/09/18 职场文书
2014党的群众路线教育实践活动学习心得体会
2014/10/31 职场文书
酒店保洁员岗位职责
2015/02/26 职场文书
作息时间调整通知
2015/04/22 职场文书