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 相关文章推荐
分页显示Oracle数据库记录的类之一
Oct 09 PHP
国内php原创论坛
Oct 09 PHP
PHP的一个基础知识 表单提交
Jul 04 PHP
php的$_FILES的临时储存文件与回收机制实测过程
Jul 12 PHP
php float不四舍五入截取浮点型字符串方法总结
Oct 28 PHP
3个PHP多维数组转为一维数组的方法实例
Mar 13 PHP
分享一则PHP定义函数代码
Feb 26 PHP
codeigniter中view通过循环显示数组数据的方法
Mar 20 PHP
PHP正则表达式匹配替换与分割功能实例浅析
Feb 04 PHP
thinkPHP显示不出验证码的原因与解决方法分析
May 20 PHP
PHP实现Huffman编码/解码的示例代码
Apr 20 PHP
Yii框架视图、视图布局、视图数据块操作示例
Oct 14 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
PHP爆绝对路径方法收集整理
2012/09/17 PHP
php中使用Ajax时出现Error(c00ce56e)的详细解决方案
2014/11/03 PHP
php常用图片处理类
2016/03/16 PHP
Smarty分页实现方法完整实例
2016/05/11 PHP
php+ajax 文件上传代码实例
2019/03/18 PHP
IE7提供XMLHttpRequest对象为兼容
2007/03/08 Javascript
javascript 面向对象 function类
2010/05/13 Javascript
javascript与CSS复习(三)
2010/06/29 Javascript
js中判断数字\字母\中文的正则表达式 (实例)
2012/06/29 Javascript
jQuery动态改变图片显示大小(修改版)的实现思路及代码
2013/12/24 Javascript
javascript中window.open在原来的窗口中打开新的窗口(不同名)
2015/11/15 Javascript
Vue2递归组件实现树形菜单
2017/04/10 Javascript
nodejs个人博客开发第一步 准备工作
2017/04/12 NodeJs
jQuery Easyui Treegrid实现显示checkbox功能
2017/08/08 jQuery
vue+socket.io+express+mongodb 实现简易多房间在线群聊示例
2017/10/21 Javascript
对angular2中的ngfor和ngif指令嵌套实例讲解
2018/09/12 Javascript
vue中,在本地缓存中读写数据的方法
2018/09/21 Javascript
vue实现可视化可拖放的自定义表单的示例代码
2019/03/20 Javascript
详解jQuery中的prop()使用方法
2020/01/05 jQuery
vue+axios全局添加请求头和参数操作
2020/07/24 Javascript
JavaScript编码小技巧分享
2020/09/17 Javascript
[36:14]DOTA2上海特级锦标赛D组小组赛#1 EG VS COL第二局
2016/02/28 DOTA
Python中__init__.py文件的作用详解
2016/09/18 Python
Python实现对字符串的加密解密方法示例
2017/04/29 Python
python 数据的清理行为实例详解
2017/07/12 Python
Python随机生成手机号、数字的方法详解
2017/07/21 Python
Python设计模式之观察者模式简单示例
2018/01/10 Python
python实现图片文件批量重命名
2020/03/23 Python
pandas使用apply多列生成一列数据的实例
2018/11/28 Python
Python简单处理坐标排序问题示例
2019/07/11 Python
在OpenCV里使用特征匹配和单映射变换的代码详解
2019/10/23 Python
python性能测试工具locust的使用
2020/12/28 Python
英国排名第一的在线宠物用品商店:Monster Pet Supplies
2018/05/20 全球购物
德国净水壶和滤芯品牌:波尔德PearlCo(家用净水器)
2020/04/29 全球购物
2014年党员自我评议(5篇)
2014/09/12 职场文书
女性健康讲座主持词
2015/07/04 职场文书