實(shí)用:動(dòng)態(tài)網(wǎng)頁制作技術(shù)PHP的十個(gè)應(yīng)用技巧_PHP教程
推薦:PHP實(shí)例:精確到每一秒鐘的在線人數(shù)顯示代碼以下為引用的內(nèi)容: <?php session_start(); $dat_now1=date("H i s");//取時(shí)間 $p2=explode(" ", $dat_now1); $
如何消滅或優(yōu)化那PHP開發(fā)網(wǎng)站程序的代碼呢?
這一點(diǎn)上我個(gè)人最主要的經(jīng)驗(yàn)只有兩點(diǎn),一是消除錯(cuò)誤的或低效的循環(huán);二是優(yōu)化數(shù)據(jù)庫查詢語句。其實(shí)還存在一些其它的優(yōu)化細(xì)節(jié),比如“str_replace比ereg_replace快”、“echo比print快”等等。這些我暫時(shí)都放在一邊,稍后我會(huì)提到用緩存來對(duì)付過于頻繁的IO。
下面我們將三個(gè)功能相同,但程序?qū)懛ú煌暮瘮?shù)的效率(消耗的時(shí)間)進(jìn)行對(duì)比。
mb5u.php
| 以下為引用的內(nèi)容: <?php doBenchmark('v1', $data); function v1($myArray = null) { function v2($myArray = null) { function v3($myArray = null){ ?> |
程序輸出的結(jié)果大概是這樣的:
v1 ran 100 times where average exec time 0.18400 ms
v2 ran 100 times where average exec time 0.15500 ms
v3 ran 100 times where average exec time 0.09100 ms
可以看到,函數(shù)的執(zhí)行時(shí)間變少,效率上升。
函數(shù)v1有個(gè)很明顯的錯(cuò)誤,每一次循環(huán)的時(shí)間,都需要調(diào)用sizeof()函數(shù)來計(jì)算。 函數(shù)v2則在循環(huán)外把$myArray數(shù)組的元素個(gè)數(shù)存到$max變量中,避免了每次循環(huán)都要計(jì)算數(shù)組的元素個(gè)數(shù),所以效率提高了。函數(shù)v3的效率最高,利用了現(xiàn)成的函數(shù),避免循環(huán)。
這個(gè)例子只是給你一個(gè)感性的認(rèn)識(shí),明白什么是相對(duì)高效的代碼。在實(shí)際開發(fā)中,我相信會(huì)有很多人會(huì)迷迷糊糊地寫出很多低效率的代碼。要把代碼寫得精煉而高效,恐怕需要時(shí)間去錘煉:-) 但這是另一個(gè)話題了,我們略過不談。
數(shù)據(jù)庫應(yīng)用基本上每個(gè)PHP程序都會(huì)用到,在實(shí)際開發(fā)中我發(fā)現(xiàn)最影響整個(gè)系統(tǒng)效率的就是數(shù)據(jù)庫這部份。至于數(shù)據(jù)庫的優(yōu)化和數(shù)據(jù)查詢語句的優(yōu)化,在此限于篇幅不詳細(xì)討論。
分享:大型Web需求解決方案 PHP定位突出2007年P(guān)HPChina周末主題論壇在許多熱愛PHP、熱愛開源的愛好者的支持下順利結(jié)束,這次活動(dòng)的主題是“開源PHP與個(gè)人的發(fā)展”。我們有幸請(qǐng)到了許多知名網(wǎng)站的技術(shù)總監(jiān)和部門經(jīng)理出席討論
- PHPNOW安裝Memcached擴(kuò)展方法詳解
- php記錄頁面代碼執(zhí)行時(shí)間
- PHP中獎(jiǎng)概率的抽獎(jiǎng)算法程序代碼
- apache設(shè)置靜態(tài)文件緩存方法介紹
- php對(duì)圖像的各種處理函數(shù)代碼小結(jié)
- PHP 關(guān)于訪問控制的和運(yùn)算符優(yōu)先級(jí)介紹
- 關(guān)于PHP語言構(gòu)造器介紹
- php/js獲取客戶端mac地址的實(shí)現(xiàn)代碼
- php5.5新數(shù)組函數(shù)array_column使用
- PHP preg_match的匹配多國語言的技巧
- php 中序列化和json使用介紹
- php采集文章中的圖片獲取替換到本地
PHP教程Rss訂閱編程教程搜索
PHP教程推薦
- PHP插入排序?qū)崿F(xiàn)代碼
- 解說PHP中插件機(jī)制的一種實(shí)現(xiàn)方案
- PHP 數(shù)組和字符串互相轉(zhuǎn)換實(shí)現(xiàn)方法
- 講解用PHP實(shí)現(xiàn)Jmai組件及發(fā)送郵件三例
- 基于ubuntu下nginx+php+mysql安裝配置的具體操作步驟
- PHP與正則表達(dá)系列之一: PHP中的正則表達(dá)式
- 解析PHP動(dòng)態(tài)網(wǎng)頁技術(shù)中SESSION的應(yīng)用
- PHP不用第三變量交換2個(gè)變量的值的解決方法
- 《PHP設(shè)計(jì)模式介紹》第七章 策略模式
- PHP編程中break及continue兩個(gè)流程控制指令
- 相關(guān)鏈接:
復(fù)制本頁鏈接| 搜索實(shí)用:動(dòng)態(tài)網(wǎng)頁制作技術(shù)PHP的十個(gè)應(yīng)用技巧
- 教程說明:
PHP教程-實(shí)用:動(dòng)態(tài)網(wǎng)頁制作技術(shù)PHP的十個(gè)應(yīng)用技巧
。