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

用单引号代替双引号来包含字符串,这样做会更快一些。因为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编程技术的全部叙述,希望大家喜欢。

本页内容版权归属为原作者,如有侵犯您的权益,请通知我们删除。
QQ 互联不允许 URL 有 Hash 存在,而 ShopNC 默认下是 ?act=toqqop=g 这样的链接回调的,所以会导致设置失败,或者 100010 错误。 1. 建立 /shop/api_qq.php 文件 2. 修改 /shop/api/qq/comm/config.php $_SESSION["callback"] = SHOP_SITE_URL."/api_qq.php"; 3. QQ 互联填写 http://域名/shop/api_qq.php shop/api_qq.php ?php
在PHP中,有一些简单的图像函数是可以直接使用的,但大多数要处理的图像,都需要在编译PHP时加上GD库。除了安装GD库之外,在PHP中还可能需要其他的库,这可以根据需要支持哪些图像格式而定。GD库可以在 http://www.boutell.com/gd/ 免费下载,不同的GD版本支持的图像格式不完全一样,最新的GD库版本支持GIF、JPEG、PNG、WBMP、XBM等格式的图像文件,此外还支持一些如FreeType、Type 1等字体库。通过GD库中的函数可以完成各种点、线、几何图形、文本及颜色的操作和

php开发工具有哪五款 - 2015-11-10 14:11:24

由于最近小编要自学php,所以整理了一些常用的php开发工具,给大家分享一下: 1、EditPlus EditPlus是一套功能强大,可取代记事本的文字编辑器,拥有无限制的Undo/Redo、英文拼字检查、自动换行、列数标记、搜寻取代、同时编辑多文件、全屏幕浏览功能。对于很多php程序来说,EditPlus 非常简单好用。同时EditPlus也是一款好用的HTML编辑器,除了可以颜色标记HTML Tag (同时支持C/C++、Perl、Java)外,还内建完整的HTML和CSS1指令功能,对于习惯用记事本

php实现点击可刷新验证码 - 2015-11-08 14:11:39

验证码类文件 CreateImg.class.php ?php class ValidationCode { private $width,$height,$codenum; public $checkcode; //产生的验证码 private $checkimage; //验证码图片 private $disturbColor = ''; //干扰像素 function __construct($width='80',$height='20',$codenum='4') { $this-width=$
在网站开发中,我们经常使用php similar text 计算两个字符串相似度; 1,similar_text的用法 如果我想计算"ly89cn"和"ly89"的相似程度,有两种表示方法 复制代码 代码如下: echo similar_text('ly89cn', 'ly89'); 这样输出4,因为他们有4个字符相等 复制代码 代码如下: similar_text('ly89cn', 'ly89', $percent); echo $percent; 这样输出80,$percent代表百分比,说明他们有
什么是SSO? 单点登录SSO(Single Sign-On)是身份管理中的一部分。SSO的一种较为通俗的定义是:SSO是指访问同一服务器不同应用中的受保护资源的同一用户,只需要登录一次,即通过一个应用中的安全验证后,再访问其他应用中的受保护资源时,不再需要重新登录验证 SSO的用途: 目前的企业应用环境中,往往有很多的应用系统,淘宝、天猫、爱淘宝等等产品和如办公自动化(OA)系统,财务管理系统,档案管理系统,信息查询系统等等。这些应用系统服务于企业的信息化建设,为企业带来了很好的效益。但是,用户在使用这

详解PHP数组赋值方法 - 2015-11-08 14:11:18

PHP数组还是比较常用的,于是我研究了一下PHP数组赋值,在这里拿出来和大家分享一下,希望对大家有用。 所谓数组就是一组变量的集合保存在计算机的内存中,这些变量可以是不同的类型,包括整数,布尔值,字符串等。可以说数组就是内存中的一个小型的数据库,它为我们访问数据提供了一个快捷的方式
今天遇到一个正则匹配的问题,忽然翻到有捕获组的概念,手册上也是一略而过,百度时无意翻到C#和Java中有对正则捕获组的特殊用法,搜索关键词有PHP时竟然没有相关内容,自己试了一下,发现在PHP中也是可行的,于是总结一下,分享的同时也希望有大神和细心的学习者找到我理解中出现的问题。 什么是捕获组 捕获组语法: 字符 描述 示例 ( pattern ) 匹配pattern并捕获结果,自动设置组号。 (abc)+d 匹配abcd或者abcabcd (? name pattern ) 或 (?' name ' p
技巧提示: array_keys($array) //返回所有键名 array_values($array) //返回所有键值 $result=array_reverse($input); //将数组颠倒,不保留键名 $result_keyed=array_reverse($input,true); //将数组颠倒,保留键名 array_keys($array,"blue"); //返回值为blue的键名 1. PHP二维数组去重复项函数 PHP数组去除重复项有个内置函数 array_unique ()

双冒号 ::在PHP中的使用情况 - 2015-11-06 17:11:19

前几天在百度知道里面看到有人问PHP中双冒号::的用法,当时给他的回答比较简洁因为手机打字不大方便!今天突然想起来,所以在这里总结一下我遇到的双冒号::在PHP中使用的情况! 双冒号操作符即作用域限定操作符Scope Resolution Operator可以访问静态、const和类中重写的属性与方法。 在类定义外使用的话,使用类名调用。在PHP 5.3.0,可以使用变量代替类名。 Program List:用变量在类定义外部访问 ?phpclass Fruit { const CONST_VALUE =