包含php取用戶的所有下級代碼優化的詞條

本文目錄一覽:

如何對php代碼進行優化

在執行某段代碼的之前獲得microtime時間,然後在結束的時候再獲取一次,兩次時間相差即可。你也可以使用zend studio 的調 試功能,它可以標出程序的執行時間。

php代碼優化及php相關問題總結

1,在函數中,傳遞數組時

使用

return

比使用

global

要高效

比如

function

userloginfo($usertemp){

$detail=explode(“|”,$usertemp);

return

$detail;

}

$login=userloginfo($userdb);

function

userloginfo($usertemp){

global

$detail;

$detail=explode(“|”,$usertemp);

}

userloginfo($userdb);

要高效

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

$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);

要高效

3,在循環中判斷時,數值判斷使用恆等要比等於高效

$a=2;$b=2;

比如

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

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

高效

4,mysql

查詢時盡量使用where

in

少用

limit

limit查多記錄的前幾條,

速度很快,

但是查詢最面幾條就會慢

使用in

.在查詢連續性記錄,非常快,

非連續性記錄第一次運行會稍微慢一點,但是之後將比較快!

5,NT服務器數據操作穩定性不及unix/linux

6,輸出前使用盡量使用

ob_start();

可以加快輸出速度,適用NT或nuli/linux,對unlix類服務器

如果使用

ob_start(‘ob_gzhandler’);輸出效率將更高

7,判斷的時候盡量使用if($a==他的值)

否定的時候盡量使用if(empty($a)),因為這樣程序運行更快速

8,使用不等時

!=

效率相當

9,個人經驗得

使用

$a=”11111111111111″;

的效率和

$a=’11111111111111′;

相當.並不象書本說的相差很大

10,使用規範的SQL語句,

會有利於MySQL的解析

11,使用

if($online){

$online1=$online;

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

}

COOKIE將馬上生效

使用

if($online)

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

COOKIE需要再刷新一次才能生效

12,使用

$handle=fopen($filename,wb);

flock($handle,LOCK_SH);

$filedata=fread($handle,filesize($filename));

fclose($handle);

file($filename);

無論在速度還是穩定上都要優秀

13,截斷字符串優化函數(可避免?字符出現)

function

substrs($content,$length)

{

if(strlen($content)$length){

$num=0;

for($i=0;$i$length-3;$i++)

{

if(ord($content[$i])127)$num++;

}

$num%2==1

?

$content=substr($content,0,$length-4):$content=substr($content,0,$length-3);

$content.=’

…’;

}

return

$content;

}

比如$newarray[1]=substrs($newarray[1],25);

14,程序中屏蔽大小寫

for

($asc=65;$asc=90;$asc++)

{

//strtolower()

此函數在一些服務器會產生亂碼!

if

(strrpos($regname,chr($asc))!==false)

{

$error=”為了避免用戶名混亂,用戶名中禁止使用大寫字母,請使用小寫字母”;

$reg_check=0;

}

}

15,不使用

file();和不使用

fget();(不穩定或速度慢)

取一數組函數

function

openfile($filename,$method=”rb”)

{

$handle=@fopen($filename,$method);

@flock($handle,LOCK_SH);

@$filedata=fread($handle,filesize($filename));

@fclose($handle);

$filedata=str_replace(“\n”,”\nofstar:”,$filedata);

$filedb=explode(“ofstar:”,$filedata);

//array_pop($filedb);

$count=count($filedb);

if($filedb[$count-1]==”){unset($filedb[$count-1]);}

return

$filedb;

}

//這個函數雖然代碼比較多,不過在速度和穩定性上優勢很大!

先寫到這

以上完全個人的一點小結,,不過正確性都經過反覆測試,如果有朋友質疑,請先測試,再討論,謝謝!

如何對PHP代碼進行優化以提高網站訪問速度

一、不要將整個頁面放到一個table中雖然現在已經很少人使用table來布局,但我覺得還是有必要提一下,原來有些站長為了追求頁面的整齊劃一,將整個網站頁面放入到一個table中,使用表格來布局,如果這樣做顯然會拖慢整個網頁的加載速度。因為table中的內容必須要等到網頁中所有內容全部加載完才會顯示出來,所以如果其中一部分加載很慢或加載不了,勢必會造成網頁的加載變慢。最好是使用div+css的方式來布局頁面,如果要使用table也不要將所有網頁內容加入到一個table中。 一.記得幫頁面減肥我們瀏覽網頁實際上是將虛擬主機中的網頁內容下載到本地硬盤,再用瀏覽器解釋查看的。下載網頁的快慢在顯示速度上佔了很大比重,所以,網頁本身 所佔的空間越小,那麼瀏覽速度就會越快。這就要求在做網頁的時候遵循一切從簡的原則,如:不要使用太大的Flash動畫、圖片等資源。乾淨、簡潔的頁面會 給人一種思路明朗的感覺。 二、PHP等文件訪問通過.js調用。 如果在靜態頁面中需要嵌入動態數據,我們在進行PHP網站優化和其他方法優化時應該注意的是,如果你要在靜態的HTML頁面里嵌入動態的數據,而這些動態的數據是由PHP程序來提供的話,這樣的話,每次有一個人訪問你的網站,服務器就要執行並處理一次PHP文件,從數據庫抽取相應的數據,再輸出到網頁,如果同時有幾萬人訪問,無疑會是服務器不堪重負。 所以最好是將數據動態生成到.js文件中,然後再首頁通過 SCRIPT /SCRIPT 這樣的代碼來調用js文件。如此一來,動態數據的顯示就在客戶端的瀏覽器中進行,大大降低了服務器資源的消耗,網站速度自然會加快。 三.使用iframe嵌套廣告代碼。 如果你在網站上插入一些廣告,又不想因此拖慢網站速度,那使用iframe比較好。只要將這些廣告代碼整理到一個獨立的頁面中,使用iframe調用即可。代碼格式如下: 四、盡量使用靜態頁面和上面說的道理一樣,大家都知道,PHP等程序實現了網站的動態交互,如留言板等。但這類程序必須先由服務器執行處理,再生成靜態頁面,然後用戶才能看到。這就必須小高服務器資源。如果網站訪問人數多,服務器配置又不夠好,很容易就造成網站速度緩慢甚至無法訪問。所以如果沒有必要,請盡量使用靜態頁面。 五.網站統計代碼應獨立放置在網頁的最下方之所以放置最下方是因為如果網站統計代碼出現故障無妨加載時,會有幾十毫秒的延遲,這時如果你將統計代碼放置網頁前面,就會影響網站加載速度。導致頁面很長時間才能訪問。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/230456.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-10 18:16
下一篇 2024-12-10 18:16

相關推薦

  • Python周杰倫代碼用法介紹

    本文將從多個方面對Python周杰倫代碼進行詳細的闡述。 一、代碼介紹 from urllib.request import urlopen from bs4 import Bea…

    編程 2025-04-29
  • Python字符串寬度不限制怎麼打代碼

    本文將為大家詳細介紹Python字符串寬度不限制時如何打代碼的幾個方面。 一、保持代碼風格的統一 在Python字符串寬度不限制的情況下,我們可以寫出很長很長的一行代碼。但是,為了…

    編程 2025-04-29
  • Python基礎代碼用法介紹

    本文將從多個方面對Python基礎代碼進行解析和詳細闡述,力求讓讀者深刻理解Python基礎代碼。通過本文的學習,相信大家對Python的學習和應用會更加輕鬆和高效。 一、變量和數…

    編程 2025-04-29
  • Python滿天星代碼:讓編程變得更加簡單

    本文將從多個方面詳細闡述Python滿天星代碼,為大家介紹它的優點以及如何在編程中使用。無論是剛剛接觸編程還是資深程序員,都能從中獲得一定的收穫。 一、簡介 Python滿天星代碼…

    編程 2025-04-29
  • 倉庫管理系統代碼設計Python

    這篇文章將詳細探討如何設計一個基於Python的倉庫管理系統。 一、基本需求 在着手設計之前,我們首先需要確定倉庫管理系統的基本需求。 我們可以將需求分為以下幾個方面: 1、庫存管…

    編程 2025-04-29
  • 寫代碼新手教程

    本文將從語言選擇、學習方法、編碼規範以及常見問題解答等多個方面,為編程新手提供實用、簡明的教程。 一、語言選擇 作為編程新手,選擇一門編程語言是很關鍵的一步。以下是幾個有代表性的編…

    編程 2025-04-29
  • Python實現簡易心形代碼

    在這個文章中,我們將會介紹如何用Python語言編寫一個非常簡單的代碼來生成一個心形圖案。我們將會從安裝Python開始介紹,逐步深入了解如何實現這一任務。 一、安裝Python …

    編程 2025-04-29
  • 怎麼寫不影響Python運行的長段代碼

    在Python編程的過程中,我們不可避免地需要編寫一些長段代碼,包括函數、類、複雜的控制語句等等。在編寫這些代碼時,我們需要考慮代碼可讀性、易用性以及對Python運行性能的影響。…

    編程 2025-04-29
  • 北化教務管理系統介紹及開發代碼示例

    本文將從多個方面對北化教務管理系統進行介紹及開發代碼示例,幫助開發者更好地理解和應用該系統。 一、項目介紹 北化教務管理系統是一款針對高校學生和教職工的綜合信息管理系統。系統實現的…

    編程 2025-04-29
  • Python愛心代碼動態

    本文將從多個方面詳細闡述Python愛心代碼動態,包括實現基本原理、應用場景、代碼示例等。 一、實現基本原理 Python愛心代碼動態使用turtle模塊實現。在繪製一個心形的基礎…

    編程 2025-04-29

發表回復

登錄後才能評論