PHP编程开发怎么提高编程效率 提高PHP编程技术


Posted in PHP onNovember 09, 2015

用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量,单引号则 不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的“函数”(译注:PHP手册中说echo是语言结构,不是真正的函数,故把函数加 上了双引号)。

1、如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍。

2、$row['id'] 的速度是$row[id]的7倍。

3、echo 比 print 快,并且使用echo的多重参数(译注:指用逗号而不是句点)代替字符串连接,比如echo $str1,$str2。

4、在执行for循环之前确定最大循环数,不要每循环一次都计算最大值,最好运用foreach代替。

5、注销那些不用的变量尤其是大数组,以便释放内存。

6、尽量避免使用__get,__set,__autoload。

7、require_once()代价昂贵。

8、include文件时尽量使用绝对路径,因为它避免了PHP去include_path里查找文件的速度,解析操作系统路径所需的时间会更少。

9、如果你想知道脚本开始执行(译注:即服务器端收到客户端请求)的时刻,使用$_SERVER[‘REQUEST_TIME']要好于time()。

10、函数代替正则表达式完成相同功能。

11、str_replace函数比preg_replace函数快,但strtr函数的效率是str_replace函数的四倍。

12、如果一个字符串替换函数,可接受数组或字符作为参数,并且参数长度不太长,那么可以考虑额外写一段替换代码,使得每次传递参数是一个字符,而不是只写一行代码接受数组作为查询和替换的参数。

13、使用选择分支语句(译注:即switch case)好于使用多个if,else if语句。

14、用@屏蔽错误消息的做法非常低效,极其低效。

15、打开apache的mod_deflate模块,可以提高网页的浏览速度。

16、数据库连接当使用完毕时应关掉,不要用长连接。

17、错误消息代价昂贵。

18、在方法中递增局部变量,速度是最快的。几乎与在函数中调用局部变量的速度相当。

19、递增一个全局变量要比递增一个局部变量慢2倍。

20、递增一个对象属性(如:$this->prop++)要比递增一个局部变量慢3倍。

下面给大家介绍提高PHP编程技术。

我决定在这里给大家讲述一些能够提高大家PHP代码效果的注意事项:

1、PHP标签

我知道有些人写PHP代码的时候喜欢用缩略标签—<? ?>,但是这可不是个好习惯,因为缩略标签在有些服务器上不能被正确识别,而标准的PHP标签的使用使你可以在任何一台服务器上准确编译你的PHP代码。可能有一天你需要把你的代码安装在那些不支持缩略标签的服务器上,于是你将不得不花费一个小时或者更多的时间老实的坐下来升级你的PHP代码

2、PHP代码的调试

有时我们运行PHP代码的时候会碰到问题并且我们不知道这问题究竟出在哪儿。而PHP中专门有个error_reporting() 函数,它可以告诉你你的代码中的每一处错误。如果你希望它显示页面的所有可能出现的错误信息,可以将下面这句代码放在文件的第二行:

PHP:

--------------------------------------------------------------------------------
error_reporting(E_ALL);
-------------------------------------------------------------------------------- 

3、PHP代码的调试(补充)

如果你完成一个有1200行PHP代码的文件,并在浏览器中浏览它时,显示你的代码的错误出现在文件的第561行。此时你有个简单的方法来找到该行,按照以下步骤:

——新建一记事本
——把你的PHP代码复制进去
——“编辑”->“转到”
——输入“561”,回车
——你的鼠标就停留在561行了
——在该行附近看看是否存在错误
——修正错误,重新上传代码到你的空间,很可能将正常运行。如果还有什么错误,则重复以上步骤。
彷徨一小生  补充:现在大都用editplus之类的软件,这个方法过时了哦

4、使用注释

如果你的PHP代码有1200行,那么要搞明白它要做什么是一件很困难的事,解决这个问题的办法就是为你的代码加上注释。
PHP的注释不同于HTML中的<!-- HTML 注释 --> ,因为它将不被输出(以为着它们甚至不会被在“查看源文件”时看到)
有三中方法在PHP中添加注释:

PHP:

--------------------------------------------------------------------------------

<?php 
// 你的注释// 
# 你的注释
/*你的注释 */ 
?>

-------------------------------------------------------------------------------- 

你可以按照你所希望的来装饰它们,你是唯一使用它们的人。

5、PHP代码的缩进

我个人其实不喜欢缩进PHP代码,但是它确实使代码易于阅读。当我不得不进行缩进时,我是用tab笺来进行的,如下:

PHP:

--------------------------------------------------------------------------------
<?php 
// Settings // 
  $var1 = "This";
// Showing Variables // 
  if($var1 == "This"){ 
    echo"You said This"; 
  }else{ 
    echo"You said That"; 
  } 
?>
-------------------------------------------------------------------------------

 6、修正你的PHP文件包含方式

我确信这里的大部分人在一个文件中都会需要包含一个或两个其它的文件。有没有想过如果并不存在你所需要的那个文件怎么办?浏览你网页的人会否因此觉得你不够专业?
在我所写的PHP代码中,我在包含另外一个文件之前都会先确定它存在,如下例:

PHP:

--------------------------------------------------------------------------------
<?php 
if(!file_exists("layout.inc.php")){exit("Error : LayOut File Missing");}else{include_once("layout.inc.php");} 
?>
--------------------------------------------------------------------------------

7、数据库查询

有时你的PHP代码中包含着于数据库的连接,你可能会遇到一些小麻烦,大部分容易出现数据库问题的人都是以这样的形式来写代码的:

PHP:

--------------------------------------------------------------------------------
<?php 
mysql_query("INSERT INTO tableName ('id','name') VALUES('1','Mike')"); 
?>
--------------------------------------------------------------------------------

。。运行之后他发现数据并没有插入到数据库中,我们可以这样来解决这个问题:

PHP:

--------------------------------------------------------------------------------
<?php 
mysql_query("INSERT INTO tableName ('id','name') VALUES('1','Mike')") or exit("MySQL Error : " . mysql_error()); 
?>
--------------------------------------------------------------------------------

8、缩略类似IF-THEN的语句

假如你接收一个注册页面传递的数据,而你想保证所有信息都已填写,你可能会用包含很多IF-THEN格式的语句,象下面这个:

PHP:

--------------------------------------------------------------------------------
<?php 
if(!$_POST[name]){exit("Sorry, but you did not fill-in all of the requested fields.");} 
if(!$_POST[email]){exit("Sorry, but you did not fill-in all of the requested fields.");} 
?>
--------------------------------------------------------------------------------

而实际上你可以通过合并这两行的IF-THEN语句使它只有一行:

PHP:

--------------------------------------------------------------------------------
<?php 
if((!$_POST[name]) || (!$_POST[email])){exit("Sorry, but you did not fill-in all of the requested fields.");} 
?>
--------------------------------------------------------------------------------

||和OR,&&和AND分别具有相同的意义

9、使用echo还是print?

大部分人会说“echo和print是相同的”,我同意这个观点。不过echo的运行速度要比print快很多,并且比print少一个字母。echo命令比print出现得晚一些(我这样认为),显然你知道该如何选择了。

10、不时输入一大段HTML语言

我相信很多人都有解决这个的办法,但是我还是想和你说说解决这个的一些办法。
⑴、输入PHP的结束标签,然后就可以随意的输入HTML代码,然后再PHP的开始标签(我不喜欢这样做,因为它看起来很不专业)。
⑵、在每句HTML代码中都加入反斜线(这样是可行的,但是你一直要这样—每一句都要)。
⑶、使用echo或者print命令,仅此而已(推荐):

PHP:

--------------------------------------------------------------------------------
<?php 
// Showing a huge chunk of HTML at a time // 
echo<<<END 
<font face="Verdana" color="Orange" size="3">Large, Orange Text in Font Size 3</font> 
<br><br> 
More HTML down here.. 
<br><br> 
<div align="Center">Centered text</div> 
END; 
?>
--------------------------------------------------------------------------------

实际上我还有很多其它的关于修饰PHP代码的东西想说,但是就这样吧,我不想继续烦大家了。
希望对大家有所帮助。

以上内容是小编给大家介绍的PHP编程开发怎么提高编程效率 提高php编程技术的全部叙述,希望大家喜欢。

PHP 相关文章推荐
关于BIG5-HKSCS的解决方法
Mar 20 PHP
PHP 获取MSN好友列表的代码(2009-05-14测试通过)
Sep 09 PHP
php 数组的指针操作实现代码
Feb 08 PHP
PHP新手入门学习方法
May 08 PHP
基于Zookeeper的使用详解
May 02 PHP
Thinkphp模板中截取字符串函数简介
Jun 17 PHP
php curl抓取网页的介绍和推广及使用CURL抓取淘宝页面集成方法
Nov 30 PHP
php开发时容易忘记的一些技术细节
Feb 03 PHP
Laravel中如何增加自定义全局函数详解
May 09 PHP
Laravel框架中Blade模板的用法示例
Aug 30 PHP
thinkPHP5框架实现基于ajax的分页功能示例
Jun 12 PHP
php实现JWT(json web token)鉴权实例详解
Nov 05 PHP
PHP 7的一些引人注目的新特性简单介绍
Nov 08 #PHP
php实现mysql数据库连接操作及用户管理
Nov 08 #PHP
php实现处理输入转义字符的代码
Nov 08 #PHP
修复ShopNC使用QQ 互联时提示100010 错误
Nov 08 #PHP
详解PHP数组赋值方法
Nov 07 #PHP
php实现点击可刷新验证码
Nov 07 #PHP
PHP中SSO Cookie登录分析和实现
Nov 06 #PHP
You might like
在PHP中实现Javascript的escape()函数代码
2010/08/08 PHP
浅析php数据类型转换
2014/01/09 PHP
php设计模式之简单工厂模式详解
2014/09/04 PHP
PHP+FFMPEG实现将视频自动转码成H264标准Mp4文件
2014/09/24 PHP
在win系统安装配置 Memcached for PHP 5.3 图文教程
2015/03/03 PHP
如何解决PHP无法实现多线程的问题
2015/09/25 PHP
Laravel框架路由和控制器的绑定操作方法
2018/06/12 PHP
JavaScript排序算法动画演示效果的实现方法
2016/10/18 Javascript
Bootstrap popover用法详解
2016/12/22 Javascript
JS中如何实现Laravel的route函数详解
2017/02/12 Javascript
微信小程序websocket实现即时聊天功能
2019/05/21 Javascript
JsonServer安装及启动过程图解
2020/02/28 Javascript
微信小程序间使用navigator跳转传值问题实例分析
2020/03/27 Javascript
python使用wxpython开发简单记事本的方法
2015/05/20 Python
安装ElasticSearch搜索工具并配置Python驱动的方法
2015/12/22 Python
对python cv2批量灰度图片并保存的实例讲解
2018/11/09 Python
Pycharm保存不能自动同步到远程服务器的解决方法
2019/06/27 Python
Python读取配置文件(config.ini)以及写入配置文件
2020/04/08 Python
keras model.fit 解决validation_spilt=num 的问题
2020/06/19 Python
Python join()函数原理及使用方法
2020/11/14 Python
Python用摘要算法生成token及检验token的示例代码
2020/12/01 Python
python热力图实现简单方法
2021/01/29 Python
浅析HTML5中的download属性使用
2019/03/13 HTML / CSS
Linux如何压缩可执行文件
2014/03/27 面试题
敏捷开发的主要原则都有哪些
2015/04/26 面试题
药学专业毕业生求职信
2013/10/20 职场文书
2014年幼儿园元旦活动方案
2014/02/13 职场文书
经典婚礼主持开场白
2014/03/13 职场文书
承诺书样本
2014/08/30 职场文书
党员学习群众路线教育实践活动对照检查材料
2014/09/23 职场文书
化验室岗位职责
2015/02/14 职场文书
车辆安全隐患排查制度
2015/08/05 职场文书
中秋节祝酒词
2015/08/12 职场文书
安全学习心得体会范文
2016/01/18 职场文书
2016年大学生党员公开承诺书
2016/03/24 职场文书
Python使用sql语句对mysql数据库多条件模糊查询的思路详解
2021/04/12 Python