PHP大神的十大优良习惯


Posted in PHP onSeptember 14, 2016

php大神养成记,具体内容如下

1、多阅读手册和源代码

没什么比阅读手册更值得强调的事了?仅仅通过阅读手册你就可以学习到很多东西,特别是很多有关于字符串和数组的函数。就在这些函数里面包括许多有用的功能,如果你仔细阅读手册,你会经常发现在以往的项目开发过程中,很多时候你在“重复发明轮子”,而实际上你只需要一个核心函数就可以完成相应的功能。手册是你的朋友。另外,现在有很多使用PHP开发的开源程序。为什么不去学习和借鉴呢?下载一份开源的PHP应用程序的源代码,仔细阅读它吧。也许越大的项目越值得去阅读,虽然它们也许有更复杂的结构和系统,但也有更详细的解释文档。

2、编写模块化代码

良好的PHP代码应该是模块化的代码。PHP的面向对象的编程功能是一些特别强大的工具,可以把你的应用程序分解成函数或方法。你应该尽可能多的从你的应用程序的服务器端分开前端的HTML/CSS/JavaScript代码,你也可以在任何PHP框架上遵循MVC(模型-视图-控制器)模式。

3、代码编写规范

良好的PHP代码应该有一套完整的代码编写规范。通过对变量和函数的命名,统一的方法访问数据库和对错误的处理,以及同样的代码缩进方式等来达到编程规范,这样可以使你的代码更具可读性。

4、编写可移植代码

良好的PHP代码应该是可移植的。你可以使用php的现有功能,如魔术引号和短标签。试着了解你的需求,然后通过适应PHP特性来编写代码让代码独立、可移植。

5、编写安全代码

良好的PHP代码应该是安全的。PHP5提供了出色的性能和灵活性。但是安全问题完全在于开发人员。对于一个专业的PHP开发人员来说,深入理解重大安全漏洞是至关重要的,如:跨站点脚本(XSS)、跨站请求伪造(CSRF)、代码注入漏洞、字符编码漏洞。通过使用PHP的特殊功能和函数,如:mysql_real_escape_string等等,你可以编写出安全的代码。

6、代码注释

代码注释是代码的重要组成部分。通过代码注释可以知道该变量或函数是做什么的,这将在今后的代码维护中十分有用。

7、使用单引号代替双引号

字符串始终使用单引号代替双引号,以避免PHP搜索字符串内的变量导致的性能下降。用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量,单引号则不会

8、转义字符串输出

使用ENT_QUOTES作参数传递给htmlspecialchars函数,以确保单引号(‘)也转换成HTML实体,这是一个好习惯。

9、使用逗号分隔字符串输出

通过echo语句输出使用逗号(,)分隔的字符串,要比使用字符串连接操作符(.)的性能更好。

10、输出前检查传来的值

输出前检查传过来的值$_GET[‘query']。使用isset或empty函数,可以用来检查变量是否为null值。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
php getsiteurl()函数
Sep 05 PHP
php的ajax框架xajax入门与试用介绍
Dec 19 PHP
比较discuz和ecshop的截取字符串函数php版
Sep 03 PHP
ThinkPHP3.1之D方法实例详解
Jun 20 PHP
php中error与exception的区别及应用
Jul 28 PHP
PHP解析RSS的方法
Mar 05 PHP
详解PHP对数组的定义以及数组的创建方法
Nov 27 PHP
一个简单的php路由类
May 29 PHP
yii2高级应用之自定义组件实现全局使用图片上传功能的方法
Oct 08 PHP
CI框架网页缓存简单用法分析
Dec 26 PHP
浅谈php调用python文件
Mar 29 PHP
PHP Ajax跨域问题解决方案代码实例
Aug 01 PHP
thinkPHP的表达式查询用法详解
Sep 14 #PHP
PHP实现对二维数组某个键排序的方法
Sep 14 #PHP
Laravel+jQuery实现AJAX分页效果
Sep 14 #PHP
php+ajax实现带进度条的上传图片功能【附demo源码下载】
Sep 14 #PHP
PHP自定义函数实现格式化秒的方法
Sep 14 #PHP
PHP经典算法集锦【经典收藏】
Sep 14 #PHP
微信支付的开发流程详解
Sep 13 #PHP
You might like
解决中英文字符串长度问题函数
2007/01/16 PHP
php中的登陆login
2007/01/18 PHP
php实现单链表的实例代码
2013/03/22 PHP
PHP中如何调用webservice的实例参考
2013/04/25 PHP
浅谈PHP变量作用域以及地址引用问题
2013/12/27 PHP
PHP中使用file_get_contents抓取网页中文乱码问题解决方法
2014/12/17 PHP
jQuery function的正确书写方法
2013/08/02 Javascript
禁止页面刷新让F5快捷键及右键都无效
2014/01/22 Javascript
完美兼容各大浏览器的jQuery插件实现图片切换特效
2014/12/12 Javascript
使用javascript实现Iframe自适应高度
2014/12/24 Javascript
利用浮层使select不可选的实现方法
2016/12/03 Javascript
Angular6 正则表达式允许输入部分中文字符
2018/09/10 Javascript
jQuery pagination分页示例详解
2018/10/23 jQuery
Vue 解决路由过渡动画抖动问题(实例详解)
2020/01/05 Javascript
openlayers实现地图弹窗
2020/09/25 Javascript
Python编程之字符串模板(Template)用法实例分析
2017/07/22 Python
让Python更加充分的使用Sqlite3
2017/12/11 Python
python实现Flappy Bird源码
2018/12/24 Python
使用Python+wxpy 找出微信里把你删除的好友实例
2019/02/21 Python
Python numpy.zero() 初始化矩阵实例
2019/11/27 Python
python实现微信打飞机游戏
2020/03/24 Python
浅谈keras中的目标函数和优化函数MSE用法
2020/06/10 Python
Python使用socketServer包搭建简易服务器过程详解
2020/06/12 Python
英国优质家居用品网上品牌:URBANARA
2018/06/01 全球购物
JBL英国官网:JBL UK
2018/07/04 全球购物
保时捷设计:Porsche Design
2019/03/30 全球购物
我的珠宝盒:Ma boîte à bijoux
2019/08/27 全球购物
档案接收函
2014/01/13 职场文书
文秘大学生求职信
2014/02/25 职场文书
暑期社会实践心得体会
2014/09/02 职场文书
2014年服务员工作总结
2014/11/18 职场文书
2014年初三班主任工作总结
2014/12/05 职场文书
三好学生个人总结
2015/02/15 职场文书
利用前端HTML+CSS+JS开发简单的TODOLIST功能(记事本)
2021/04/13 Javascript
BCL经典机 SONY ICF-5900W电路分析
2022/04/24 无线电
python获取带有返回值的多线程
2022/05/02 Python