首頁 培訓(xùn)網(wǎng) 最新資訊 熱門問答

PHP

13182834526 免費(fèi)試聽 在線客服

您的位置: 南京培訓(xùn)網(wǎng) > PHP培訓(xùn)資訊 > 南京php入門培訓(xùn)班

南京php入門培訓(xùn)班

來源:教育聯(lián)展網(wǎng) | 發(fā)布時(shí)間: | 編輯:佚名

南京php入門培訓(xùn)班,歡迎了南京php入門培訓(xùn)班的文章!想要了解更多關(guān)于南京php入門培訓(xùn)班的同學(xué)可撥打:15996488286

PHP開發(fā)程序應(yīng)該注意的42個(gè)優(yōu)化準(zhǔn)則

php 獨(dú)特的語法混合了 C、Java、Perl 以及 PHP 自創(chuàng)新的語法。它可以比 CGI或者Perl更快速的執(zhí)行動(dòng)態(tài)網(wǎng)頁。用PHP做出的動(dòng)態(tài)頁面與其他的編程語言相比,PHP是將程序嵌入到HTML文檔中去執(zhí)行,執(zhí)行效率比完全生成 HTML標(biāo)記的CGI要高許多。下面介紹了PHP開發(fā)程序應(yīng)該注意的42個(gè)優(yōu)化準(zhǔn)則。

1.如果一個(gè)方法可靜態(tài)化,就對(duì)它做靜態(tài)聲明。速率可提升至4倍。

2.echo 比 print 快。

3.使用echo的多重參數(shù)(譯注:指用逗號(hào)而不是句點(diǎn))代替字符串連接。

4.在執(zhí)行for循環(huán)之前確定** 大循環(huán)數(shù),不要每循環(huán)一次都計(jì)算** 大值。

5.注銷那些不用的變量尤其是大數(shù)組,以便釋放內(nèi)存。

6.盡量避免使用__get,__set,__autoload。

7.require_once()代價(jià)昂貴。

8.在包含文件時(shí)使用完整路徑,解析操作系統(tǒng)路徑所需的時(shí)間會(huì)更少。

9.如果你想知道腳本開始執(zhí)行(譯注:即服務(wù)器端收到客戶端請(qǐng)求)的時(shí)刻,使用$_SERVER[‘REQUEST_TIME’]要好于time()。

10.函數(shù)代替正則表達(dá)式完成相同功能。

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

12.如果一個(gè)字符串替換函數(shù),可接受數(shù)組或字符作為參數(shù),并且參數(shù)長度不太長,那么可以考慮額外寫一段替換代碼,使得每次傳遞參數(shù)是一個(gè)字符,而不是只寫一行代碼接受數(shù)組作為查詢和替換的參數(shù)。

13.使用選擇分支語句(譯注:即switch case)好于使用多個(gè)if,else if語句。

南京php入門培訓(xùn)班

14.用@屏蔽錯(cuò)誤消息的做法非常低效。

15.打開apache的mod_deflate模塊。

16.數(shù)據(jù)庫連接當(dāng)使用完畢時(shí)應(yīng)關(guān)掉。

17.$row[‘id’]的效率是$row[id]的7倍。

18.錯(cuò)誤消息代價(jià)昂貴。

19.盡量不要在for循環(huán)中使用函數(shù),比如for ($x=0; $x prop )要比遞增一個(gè)局部變量慢3倍。

23.遞增一個(gè)未預(yù)定義的局部變量要比遞增一個(gè)預(yù)定義的局部變量慢9至10倍。

24.僅定義一個(gè)局部變量而沒在函數(shù)中調(diào)用它,同樣會(huì)減慢速度(其程度相當(dāng)于遞增一個(gè)局部變量)。PHP大概會(huì)檢查看是否存在全局變量。

25.方法調(diào)用看來與類中定義的方法的數(shù)量無關(guān),因?yàn)槲?在測(cè)試方法之前和之后都)添加了10個(gè)方法,但性能上沒有變化。

26.派生類中的方法運(yùn)行起來要快于在基類中定義的同樣的方法。

程序員專屬禮品:編程水杯

27.調(diào)用帶有一個(gè)參數(shù)的空函數(shù),其花費(fèi)的時(shí)間相當(dāng)于執(zhí)行7至8次的局部變量遞增操作。類似的方法調(diào)用所花費(fèi)的時(shí)間接近于15次的局部變量遞增操作。

28.用單引號(hào)代替雙引號(hào)來包含字符串,這樣做會(huì)更快一些。因?yàn)镻HP會(huì)在雙引號(hào)包圍的字符串中搜尋變量,單引號(hào)則不會(huì)。當(dāng)然,只有當(dāng)你不需要在字符串中包含變量時(shí)才可以這么做。

29.輸出多個(gè)字符串時(shí),用逗號(hào)代替句點(diǎn)來分隔字符串,速度更快。注意:只有echo能這么做,它是一種可以把多個(gè)字符串當(dāng)作參數(shù)的“函數(shù)”(譯注:PHP手冊(cè)中說echo是語言結(jié)構(gòu),不是真正的函數(shù),故把函數(shù)加上了雙引號(hào))。

30.Apache解析一個(gè)PHP腳本的時(shí)間要比解析一個(gè)靜態(tài)HTML頁面慢2至10倍。盡量多用靜態(tài)HTML頁面,少用腳本。

31.除非腳本可以緩存,否則每次調(diào)用時(shí)都會(huì)重新編譯一次。引入一套PHP緩存機(jī)制通??梢蕴嵘?5%至100%的性能,以免除編譯開銷。

32.盡量做緩存,可使用memcached。memcached是一款高性能的內(nèi)存對(duì)象緩存系統(tǒng),可用來加速動(dòng)態(tài)Web應(yīng)用程序,減輕數(shù)據(jù)庫負(fù)載。對(duì)運(yùn)算碼 (OP code)的緩存很有用,使得腳本不必為每個(gè)請(qǐng)求做重新編譯。

33.當(dāng)操作字符串并需要檢驗(yàn)其長度是否滿足某種要求時(shí),你想當(dāng)然地會(huì)使用strlen()函數(shù)。此函數(shù)執(zhí)行起來相當(dāng)快,因?yàn)樗蛔鋈魏斡?jì)算,只返回在zval 結(jié)構(gòu)(C的內(nèi)置數(shù)據(jù)結(jié)構(gòu),用于存儲(chǔ)PHP變量)中存儲(chǔ)的已知字符串長度。

但是,由于strlen()是函數(shù),多多少少會(huì)有些慢,因?yàn)楹瘮?shù)調(diào)用會(huì)經(jīng)過諸多步驟,如字母小寫化(譯注:指函數(shù)名小寫化,PHP不區(qū)分函數(shù)名大小寫)、哈希查找,會(huì)跟隨被調(diào)用的函數(shù)一起執(zhí)行。在某些情況下,你可以使用isset() 技巧加速執(zhí)行你的代碼。

(舉例如下)

if (strlen($foo) < 5) { echo “Foo is too short”$$ }

(與下面的技巧做比較)

if (!isset($foo{5})) { echo “Foo is too short”$$ }

調(diào)用isset()恰巧比strlen()快,因?yàn)榕c后者不同的是,isset()作為一種語言結(jié)構(gòu),意味著它的執(zhí)行不需要函數(shù)查找和字母小寫化。也就是說,實(shí)際上在檢驗(yàn)字符串長度的頂層代碼中你沒有花太多開銷。

34. 當(dāng)執(zhí)行變量$i的遞增或遞減時(shí),$i 會(huì)比 $i慢一些。這種差異是PHP特有的,并不適用于其他語言,所以請(qǐng)不要修改你的C或Java代碼并指望它 們能立即變快,沒用的。 $i更快是因?yàn)樗恍枰?條指令(opcodes),$i 則需要4條指令。后置遞增實(shí)際上會(huì)產(chǎn)生一個(gè)臨時(shí)變量,這個(gè)臨時(shí)變 量隨后被遞增。而前置遞增直接在原值上遞增。這是** 優(yōu)化處理的一種,正如Zend的PHP優(yōu)化器所作的那樣。

牢記這個(gè)優(yōu)化處理不失為一個(gè)好主意,因?yàn)椴⒉皇撬械闹噶顑?yōu)化器都會(huì)做同樣的優(yōu)化處理,并且存在大量沒有裝配指令優(yōu)化器的互聯(lián)網(wǎng)服務(wù)提供商(ISPs)和服務(wù)器。

35.并不是事必面向?qū)ο?OOP),面向?qū)ο笸_銷很大,每個(gè)方法和對(duì)象調(diào)用都會(huì)消耗很多內(nèi)存。

36.并非要用類實(shí)現(xiàn)所有的數(shù)據(jù)結(jié)構(gòu),數(shù)組也很有用。

37.不要把方法細(xì)分得過多,仔細(xì)想想你真正打算重用的是哪些代碼?

38.當(dāng)你需要時(shí),你總能把代碼分解成方法。

39.盡量采用大量的PHP內(nèi)置函數(shù)。

40.如果在代碼中存在大量耗時(shí)的函數(shù),你可以考慮用C擴(kuò)展的方式實(shí)現(xiàn)它們。

41.評(píng)估檢驗(yàn)(profile)你的代碼。檢驗(yàn)器會(huì)告訴你,代碼的哪些部分消耗了多少時(shí)間。Xdebug調(diào)試器包含了檢驗(yàn)程序,評(píng)估檢驗(yàn)總體上可以顯示出代碼的瓶頸。

42.mod_zip可作為Apache模塊,用來即時(shí)壓縮你的數(shù)據(jù),并可讓數(shù)據(jù)傳輸量降低80%。

兄弟連PHP學(xué)科簡介

兄弟連PHP學(xué)科簡介

專注PHP課程研發(fā)與教學(xué)11年

每年P(guān)HP視頻教程受益學(xué)員高達(dá)十幾萬

  • 100000 學(xué)員成功蛻變

  • 450個(gè)超含金量課時(shí)

  • 每180天課程升級(jí)

  • 50000書記教材銷量

  • 兄弟連十年級(jí)PHP大牛講師領(lǐng)路 、可迅速提升學(xué)員獨(dú)立開發(fā)能力

  • 帶領(lǐng)學(xué)員利用PHP過程化編寫方式、快速進(jìn)入Web開發(fā)領(lǐng)域

  • 兄弟連高端PHP課程技術(shù)點(diǎn)完全 、采用編碼規(guī)范,使學(xué)員熟練應(yīng)用

  • 深入剖析網(wǎng)站需求分析 、講解數(shù)據(jù)庫模式、使用和設(shè)計(jì)流程

  • 11年研磨,零基礎(chǔ)**學(xué) 、入門易上手快,學(xué)習(xí)周期短

  • 適合開發(fā)論壇、SNS 、企業(yè)門戶網(wǎng)站項(xiàng)目的開發(fā)

兄弟連PHP講師

兄弟連PHP講師

李 強(qiáng) 兄弟連教育總監(jiān)級(jí)講師

主講php高級(jí)內(nèi)容、 我的目標(biāo)不是教會(huì)你,我的目標(biāo)是讓你去教別人,目標(biāo)和態(tài)度決定了一個(gè)人前進(jìn)的方向和高度。三年web開發(fā)經(jīng)驗(yàn),對(duì)js情有獨(dú)鐘。低調(diào)、負(fù)責(zé)、樂于分享,就是這么一個(gè)簡單的技術(shù)屌絲。

超高開發(fā)技能 征服巨頭企業(yè)HR 激蕩互聯(lián)網(wǎng)山河

兄弟連定向輸出八大學(xué)科互聯(lián)網(wǎng)翹楚,吸金力不言而喻。定期舉辦招聘會(huì),學(xué)習(xí)、就業(yè)一站式服務(wù)平臺(tái)。

兄弟連IT培訓(xùn)機(jī)構(gòu)

兄弟連教育
11年,培養(yǎng)數(shù)十萬名學(xué)員成為中國優(yōu)秀的IT職業(yè)精英

兄弟連教育IT培訓(xùn)

兄弟連教育是易第優(yōu)(北京)教育咨詢股份有限公司旗下品牌,致力于高素質(zhì)軟件開發(fā)人才的培訓(xùn)與培養(yǎng)。公司成立于2007年,總部設(shè)在北京,目前已在上海、廣州、深圳、鄭州、沈陽、成都、南京、杭州、寧波、石家莊、南昌等城市設(shè)立了教學(xué)中心,業(yè)務(wù)范圍覆蓋全國。2016年5月獲得華圖教育1.25億元投資,同年9月掛牌新三板(股票代碼839467)。

以“讓學(xué)員技術(shù)靠譜、做人更靠譜”為使命,傳承極致的工匠精神,深耕PHP、Java、大數(shù)據(jù)、Python全棧 人工智能、Linux云計(jì)算、UI設(shè)計(jì)、前端全棧、網(wǎng)絡(luò)營銷等學(xué)科教研,擁有來自北大、清華和BAT等知**企的專兼職教師數(shù)百名。

除了強(qiáng)大的線下集中培訓(xùn)外,為在職和自學(xué)能力較強(qiáng)人士量身打造的IT云課堂,將線上課程與線下隨時(shí)更新的面授課同步,并首創(chuàng)“零學(xué)費(fèi)學(xué)習(xí)”模式。公司先后榮獲騰訊網(wǎng)“年度特色職業(yè)教育品牌”、百度教育“2017年度新銳教育品牌”等多項(xiàng)榮譽(yù)。公司編寫的教材《細(xì)說PHP》自2009年首次印刷以來再版8次,先后榮獲51CTO“讀者喜愛的原創(chuàng)IT技術(shù)圖書獎(jiǎng)”、電子工業(yè)出版社2013年年度暢銷 IT 技術(shù)圖書獎(jiǎng)和2016年年度好書等數(shù)十項(xiàng)榮譽(yù)。公司的綜合性職業(yè)發(fā)展自媒體《明哥聊求職》榮獲“2017教育行業(yè)優(yōu)秀自媒體”大獎(jiǎng)。

兄弟連將始終以強(qiáng)大的師資陣容、嚴(yán)苛的教學(xué)管理體系和先進(jìn)的課程研發(fā)理念,致力于培養(yǎng)中國優(yōu)秀的IT職業(yè)精英!

想了解更多關(guān)于南京PHP培訓(xùn)資料,請(qǐng)咨詢:教育聯(lián)展網(wǎng)

更多關(guān)于南京PHP培訓(xùn)的信息:

南京PHP培訓(xùn)

南京PHP培訓(xùn)班

熱門機(jī)構(gòu)推薦
PHP

免費(fèi)體驗(yàn)課開班倒計(jì)時(shí)

11: 41: 09

稍后會(huì)有專業(yè)老師給您回電,請(qǐng)保持電話暢通

咨詢電話:13182834526

本周熱門資訊

全國分站 熱門機(jī)構(gòu)

北京PHP培訓(xùn) 上海PHP培訓(xùn) 廣州PHP培訓(xùn) 深圳PHP培訓(xùn) 杭州PHP培訓(xùn) 蘇州PHP培訓(xùn) 南京PHP培訓(xùn) 天津PHP培訓(xùn) 佛山PHP培訓(xùn) 南寧PHP培訓(xùn) 長沙PHP培訓(xùn) 重慶PHP培訓(xùn) 太原PHP培訓(xùn) 青島PHP培訓(xùn) 寧波PHP培訓(xùn) 鄭州PHP培訓(xùn) 西安PHP培訓(xùn) 廈門PHP培訓(xùn) 武漢PHP培訓(xùn) 成都PHP培訓(xùn) 無錫PHP培訓(xùn) 濟(jì)南PHP培訓(xùn) 昆明PHP培訓(xùn) 貴陽PHP培訓(xùn) 揚(yáng)州PHP培訓(xùn) 徐州PHP培訓(xùn) 珠海PHP培訓(xùn) 合肥PHP培訓(xùn) 長春PHP培訓(xùn)

珠海達(dá)內(nèi)教育青島達(dá)內(nèi)武漢達(dá)內(nèi)教育石家莊達(dá)內(nèi)教育

申請(qǐng)?jiān)嚶犆~

QQ:3037977752
加盟合作:0755-83654572