PHP速度经验谈

问题一:为什么要用
[php]
while($r2[] = mysql_fetch_array($result))
{
}

foreach($r2 as $rr2)
{

$query = "select name,tid from ask_school where tid='$rr2[x2]' ";
$result2 = mysql_db_query($DataBase, $query);
$r5[] = mysql_fetch_array($result2);

}

[/php]

而不用:
[php]
$j=0;
while($r2[$j] = mysql_fetch_array($result))
{
$query = "select name,tid from ask_school where tid='$r2[$j][x2]' ";
$result2 = mysql_db_query($DataBase, $query);
$r5[$j] = mysql_fetch_array($result2);
$j++;
}

[/php]

答:因为PHP网站在运行过程中,真正影响速度的原因只有一个,那就是对MYSQL的读取,至于程序多运行一两次复制和拷贝,很难对速度造成影响.所以在读取MYSQL的时候,我宁愿多一次内存中的运算,也不愿有什么操作影响到对MYSQL的读取.

问题二:为什么不用模版写程序?

答:因为PHP已经是最好的模版引擎了,为什么还要用其它的模版呢?


问题三:为什么把大量的PHP代码放在<HTML>的上方,而不是放面HTML的下方?

答:这个是有很大区别的,其一:代码放在<HTML>上方,如果对代码进行修改的话,用DREARWEAVER再看下面视图的时候,不会有慢的感觉.
其二:大部分代码全部放在<HTML>上方,而不是放在<HTML>下方,对PHP脚本的解析运行有好处,可以减轻PHP服务器解析脚本的负担,并且符合模版及缓存设计思想.


问题三:为什么要用
[php]
$query = "select count(*) from ask_member where $t ";
$result2 = mysql_db_query($DataBase, $query);
$r3 = mysql_fetch_array($result2);
$amount=$r3[0];
[/php]
而不是用:
[PHP]
$query = "select * from ask_member ";
$result2 = mysql_db_query($DataBase, $query);
$amount=mysql_num_rows($result2);
[/PHP]

答:第一种是对一条记录的查询,第二种是对所有记录的查询,两者速度有天壤之别.


问题四:为什么上面要多一行
[PHP]
$n=count($r2)-1;
[/PHP]
而不是下面直接用:
[PHP]
<?php
for($i=0;$i<count($r2)-1;$i++)
{
?>
[/PHP]
答:应该尽量减少在<HTML>以下进行PHP的运算,如果过多地在<HTML>下进行运算的话,那就成了混编了.
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值