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 中的类
Oct 09 PHP
别人整理的服务器变量:$_SERVER
Oct 20 PHP
Mysql的GROUP_CONCAT()函数使用方法
Mar 28 PHP
PHP中spl_autoload_register()和__autoload()区别分析
May 10 PHP
PHP采集类snoopy详细介绍(snoopy使用教程)
Jun 19 PHP
PHP中使用localhost连接Mysql不成功的解决方法
Aug 20 PHP
php使用cookie保存用户登录的用户名实例
Jan 26 PHP
php计算整个目录大小的方法
Jun 19 PHP
php用户注册信息验证正则表达式
Nov 12 PHP
Laravel学习教程之View模块详解
Sep 18 PHP
ThinkPHP 3使用OSS的方法
Jul 19 PHP
Laravel 简单实现Ajax滚动加载示例
Oct 22 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 && 逻辑与运算符使用说明
2010/03/04 PHP
PHP 解决utf-8和gb2312编码转换问题
2010/03/18 PHP
session在php5.3中的变化 session_is_registered() is deprecated in
2013/11/12 PHP
PHP微框架Dispatch简介
2014/06/12 PHP
php中strstr、strrchr、substr、stristr四个函数的区别总结
2014/09/22 PHP
PHP+Ajax+JS实现多图上传
2016/05/07 PHP
php 判断页面或图片是否经过gzip压缩的方法
2017/04/05 PHP
yii2 上传图片的示例代码
2018/11/02 PHP
php curl简单采集图片生成base64编码(并附curl函数参数说明)
2019/02/15 PHP
JavaScript入门教程(6) Window窗口对象
2009/01/31 Javascript
javascript 关于# 和 void的区别分析
2009/10/26 Javascript
Javascript 通过json自动生成Dom的代码
2010/04/01 Javascript
jQuery学习笔记(1)--用jQuery实现异步通信(用json传值)具体思路
2013/04/08 Javascript
js实现收缩菜单效果实例代码
2013/10/30 Javascript
JavaScript使用循环和分割来替换和删除元素实例
2014/10/13 Javascript
搞定immutable.js详细说明
2016/05/02 Javascript
全面解析Bootstrap中tooltip、popover的使用方法
2016/06/13 Javascript
很棒的Bootstrap选项卡切换效果
2016/07/01 Javascript
js Canvas绘制圆形时钟效果
2017/02/17 Javascript
js求数组中全部数字可拼接出的最大整数示例代码
2017/08/25 Javascript
简单了解Ajax表单序列化的实现方法
2019/06/14 Javascript
Vue中使用matomo进行访问流量统计的实现
2019/11/05 Javascript
jQuery实现推拉门效果
2020/10/19 jQuery
JS使用setInterval计时器实现挑战10秒
2020/11/08 Javascript
[01:15:16]DOTA2-DPC中国联赛 正赛 Elephant vs Aster BO3 第一场 1月26日
2021/03/11 DOTA
gearman的安装启动及python API使用实例
2014/07/08 Python
Python中使用装饰器和元编程实现结构体类实例
2015/01/28 Python
Python urlopen()和urlretrieve()用法解析
2020/01/07 Python
python实现logistic分类算法代码
2020/02/28 Python
python怎么判断素数
2020/07/01 Python
canvas如何绘制钟表的方法
2017/12/13 HTML / CSS
全球采购的街头服饰和帽子:Urban Excess
2020/10/28 全球购物
String是最基本的数据类型吗?
2013/06/13 面试题
应届本科生推荐信范文
2013/12/25 职场文书
十佳家长事迹材料
2014/08/26 职场文书
MySQL 存储过程的优缺点分析
2021/05/20 MySQL