麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 開發(fā) > PHP > 正文

php提高網(wǎng)站效率的技巧

2024-05-04 23:39:20
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

隨著國(guó)內(nèi)PHP開發(fā)的興起,代碼優(yōu)化成了老生常談的話題了。作者本人時(shí)不時(shí)也會(huì)跑到CSDN壇論與人交流交流有交PHP開發(fā)和優(yōu)化問(wèn)題,這也是可以使自身快速提高的方法。

程序員在編寫程序時(shí),總是想要使自己的程序占用資源最小,運(yùn)行速度更快,代碼量更少。往往我們?cè)谧非筮@些的同時(shí)卻失去了很多東西。優(yōu)化的目的是花最少的代價(jià)換來(lái)最快的運(yùn)行速度與最容易維護(hù)的代碼。以下就幾點(diǎn)PHP的優(yōu)化做下總結(jié):

1、in_array的用法

避免在大的數(shù)組上使用in_array(),同時(shí)避免在循環(huán)中對(duì)包含20個(gè)以上元素的數(shù)組使用這個(gè)函數(shù)。in_array()會(huì)非常消耗資源.對(duì)于小的數(shù)組這種影響可能很小,但是在一個(gè)循環(huán)中檢查大數(shù)組可能會(huì)需要好幾秒鐘的時(shí)間。如果您確實(shí)需要這個(gè)功能,請(qǐng)使用isset()來(lái)查找數(shù)組元素。實(shí)際上是使用鍵名來(lái)查詢鍵值。調(diào)用isset($array[$var])會(huì)比in_array($var,array_keys($array))要快得多。

2、數(shù)組鍵名

在PHP中,使用不經(jīng)單引號(hào)包含的字符串作為數(shù)組鍵名是合法的,但是我們不希望如此--鍵名應(yīng)該總是由單引號(hào)包含而避免引起混淆。注意這是使用一個(gè)字符串,而不是使用變量做鍵名的情況。

例如:

 

 
  1. // 不好的寫法 
  2. $foo = $assoc_array[blah]; 
  3. // 好的寫法 
  4. $foo = $assoc_array['blah']; 
  5. // 不好的寫法 
  6. $foo = $assoc_array["$var"]; 
  7. // 好的寫法 
  8. $foo = $assoc_array[$var]; 

3、字符串表達(dá)

在PHP中用兩種不同的方式來(lái)表示一個(gè)字符串-單引號(hào)或者雙引號(hào)。主要的區(qū)別在于語(yǔ)法解釋器會(huì)對(duì)雙引號(hào)表示的字符串進(jìn)行變量替換,而不會(huì)處理單引號(hào)表示的字符串。因此您應(yīng)該總是使用單引號(hào),除非您真的需要在字符串中處理變量。這樣,我們可以減少程序運(yùn)行消耗,因?yàn)檎Z(yǔ)法解釋器不需要每次多處理一大堆根本沒有變量的字符串。

同樣,如果您在函數(shù)調(diào)用中使用了一個(gè)字符串變量作為參數(shù),您不需要將這個(gè)變量包含在引號(hào)里。這會(huì)導(dǎo)致語(yǔ)法解釋器多做好多無(wú)用功。記住,幾乎所有雙引號(hào)中的轉(zhuǎn)義符對(duì)于單引號(hào)都是無(wú)效的。您需要留意以上的規(guī)則,但是有時(shí)候?yàn)榱舜a的可讀性,可以適當(dāng)?shù)钠评?/p>

例如:

 

 
  1. // 不好的寫法 
  2. $str = "This is a really long string with no variables for the parser to find."
  3. do_stuff("$str"); 
  4. // 好的寫法 
  5. $str = 'This is a really long string with no variables for the parser to find.'
  6. do_stuff($str); 
  7. // 有時(shí)候單引號(hào)不是那么合適 
  8. $post_url = $phpbb_root_path . 'posting.' . $phpEx . '?mode=' . $mode . '&start=' . $start; 
  9. // 雙引號(hào)有時(shí)候能讓代碼行更集中 
  10. $post_url = "{$phpbb_root_path}posting.$phpEx?mode=$mode&start=$start"

4、循環(huán)定義中的操作

在比較部分如果存在運(yùn)算請(qǐng)一定要進(jìn)行優(yōu)化。因?yàn)檫@部分會(huì)在循環(huán)中的每一步進(jìn)行操作:

 

 
  1. // 在每次循環(huán)中sizeof函數(shù)都要被調(diào)用 
  2. for ($i = 0; $i < sizeof($post_data); $i++) 
  3. do_something(); 
  4. // 您可以在循環(huán)起始部分對(duì)這個(gè)不變的量賦值 
  5. for ($i = 0, $size = sizeof($post_data); $i < $size; $i++) 
  6. do_something(); 
  7. }  

5、分支判斷,switchcase好于ifelse

使用分支語(yǔ)句要比用很多ifelse好很多。

6、不要濫用@操作符

不要濫用@操作符,看上去很簡(jiǎn)單,但實(shí)際上用@比不用@效率要差幾倍。

特別不要在循環(huán)中使用@。

7、獲取時(shí)間的方法

很多時(shí)候我們習(xí)慣使用time()獲取當(dāng)前時(shí)間,但time()終歸是一個(gè)函數(shù),不如直接用$_SERVER['REQUEST_TIME']好一點(diǎn)。

8、字符串長(zhǎng)度判斷

兩種寫法:

(1)if(strlen($str) < 5){/* do something */}

(2)if(isset($str[5])){ /* do something */ }

以上是小編在網(wǎng)上整理的php優(yōu)化技巧,希望對(duì)大家的學(xué)習(xí)有所幫助!

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 中国成人在线视频 | 国产亚洲精品视频中文字幕 | 国产精品91在线 | 国产乱乱视频 | 欧美一级黄色录相 | 亚洲第一视频在线 | 巨乳激情| 日本成人在线免费 | 特一级黄色毛片 | 色污视频在线观看 | 欧美日韩在线视频一区 | 精品一区二区视频在线观看 | 国产1区2 | 国产精品成aⅴ人片在线观看 | 黄网站色成年大片免费高 | 羞羞视频2023 | 日韩午夜片 | 欧美日韩亚洲国产精品 | 久久精品视频亚洲 | 久久久视频免费观看 | 国产精品久久久久久久av | 黄污视频在线看 | 蜜桃一本色道久久综合亚洲精品冫 | 欧美a∨亚洲欧美亚洲 | 久久久久久久久日本理论电影 | 精品国产一区二区在线观看 | 黄色7777| 中国美女一级黄色大片 | 在线观看免费毛片视频 | 国产午夜精品久久久久婷 | 曰批全过程40分钟免费视频多人 | 欧美高清一级片 | 粉嫩粉嫩一区二区三区在线播放 | av在线播放观看 | 成人一级毛片 | 久久精品欧美电影 | a免费视频 | 亚洲国产精品久久久 | 国产激爽大片在线播放 | 免费在线观看国产精品 | 99热1|