溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

開發(fā)PHP商城時(shí)對(duì)代碼的一些建議

發(fā)布時(shí)間:2020-08-06 06:55:59 來(lái)源:網(wǎng)絡(luò) 閱讀:296 作者:德尚網(wǎng)絡(luò) 欄目:編程語(yǔ)言

當(dāng)運(yùn)營(yíng)一個(gè)商城網(wǎng)站到達(dá)一定量級(jí)的時(shí)候,網(wǎng)站性能會(huì)是一個(gè)永恒的主題。最近一兩年一直在開發(fā)DSmall開源商城,在開發(fā)過(guò)程中也一直在考慮性能的問(wèn)題,所以總結(jié)了一些經(jīng)驗(yàn)。針對(duì)于PHP代碼性能這一塊有以下幾點(diǎn)經(jīng)驗(yàn):

1、在代碼中,需要使用傳遞參數(shù)時(shí),少使用‘引用傳參’。

2、在使用for循環(huán)之前。$i<count(),計(jì)算數(shù)組或字符串的長(zhǎng)度的函數(shù)盡量少用。

3、使用isset函數(shù)的時(shí)候要注意檢測(cè)的變量。因?yàn)閕sset對(duì)變量未設(shè)置和變量為null返回的值是一樣的。這個(gè)對(duì)你的性能提升的不大,但是,會(huì)反映出來(lái)你的程序的嚴(yán)謹(jǐn)性。

4、盡量不要在循環(huán)中使用查詢。每循環(huán)一次就需要調(diào)用數(shù)據(jù)庫(kù),多次調(diào)用的效率高,還是只執(zhí)行一次的效率高?

5、正則表達(dá)式盡量少使用,函數(shù)代替正則表達(dá)式完成相同功能。

6、注重代碼的復(fù)用,盡量使用少量的代碼實(shí)現(xiàn)功能,這個(gè)性能影響不大,但是應(yīng)該注意,例如 德尚網(wǎng)絡(luò)DSMall商城系統(tǒng)中就處理的非常好。

7、如果能將類的方法定義為static,就定義為static,因?yàn)樗男蕰?huì)提升將近4倍。

8、echo 比 print 快,并且使用echo的多重參數(shù)

9、str_replace函數(shù)比preg_replace函數(shù)效率快,但是strtr函數(shù)的效率是str_replace函數(shù)的近四倍。

10、多維數(shù)組盡量不要循環(huán)嵌套賦值。

11、foreach效率更高,需要使用foreach替代while和for循環(huán)

12、盡量的在代碼內(nèi)少進(jìn)行文件操作

13、盡量打開apache的mod_deflate模塊,它可以提高網(wǎng)頁(yè)的瀏覽速度

14、最后就是就是PHP中的配置文件php.ini了。例如分配內(nèi)存、執(zhí)行時(shí)間長(zhǎng)短、Zend OPcache、open_ssl、緩存輸出等等。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI