小結:PHP動態網頁程式最佳化及高效提速問題

來源:互聯網
上載者:User

傳遞數組時使用 return 比使用 global 要高效,比如:

function userloginfo($usertemp){

$detail=explode("",$usertemp);

return $detail;

}

$login=userloginfo($userdb);

function userloginfo($usertemp){

global $detail;

$detail=explode("",$usertemp);

}

userloginfo($userdb);

要高效

二、 (這個代碼用於得到程式目錄對應的網址,推薦使用)

$urlarray=explode('/',$HTTP_SERVER_VARS['REQUEST_URI']);

$urlcount=count($urlarray);unset($urlarray[$urlcount-1]);

$ofstarurl='http://'.$HTTP_SERVER_VARS['HTTP_HOST'].implode('/',$urlarray);

這段代碼比

$pre_urlarray=explode('/',$HTTP_SERVER_VARS['HTTP_REFERER']);

$pre_url=array_pop($pre_urlarray);

要高效

三、 在迴圈中判斷時,數值判斷使用恒等要比等於高效

$a=2;$b=2;

比如

if($a==$b)$c=$a;

if($a===$b)$c=$a;

高效

四、 mySQL 查詢時盡量使用where in 少用 limit

limit查多記錄的前幾條, 速度很快, 但是查詢最面幾條就會慢

使用in .在查詢連續性記錄,非常快, 非連續性記錄第一次運行會稍微慢一點,但是之後將比較快!

五、 NT伺服器資料操作穩定性不及unix/linux

六、 輸出前使用盡量使用 ob_start(); 可以加快輸出速度,適用NT或nuli/linux,對unlix類伺服器 如果使用 ob_start('ob_gzhandler');輸出效率將更高

七、 判斷的時候盡量使用if($a==他的值) 否定的時候盡量使用if(empty($a)),因為這樣程式運行更快速

八、 使用不等時 != 與 <> 效率相當

九、 個人經驗得 使用 $a="11111111111111"; 的效率和 $a='11111111111111'; 相當.並不象書本說的相差很大

十、 使用規範的SQL語句, 會有利於MySQL的解析

十一、 使用

if($online){

$online1=$online;

setcookie('online1',$online,$cookietime,$ckpath,$ckdomain,$secure);

}

COOKIE將馬上生效

使用

if($online)

setcookie('online1',$online,$cookietime,$ckpath,$ckdomain,$secure);

COOKIE需要再重新整理一次才會生效



相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.