PHP的5種最佳實踐

在WEB開發(fā)世界里歇僧,PHP是最流行的語言之一访诱,從PHP里垫挨,你能夠很容易的找到你所需的腳本,遺憾的是触菜,很少人會去用“最佳做法”去寫一個PHP程序九榔。這里我們向大家介紹PHP的5種最佳實踐,當然涡相,每一種都是經(jīng)過大師們證明而得出的哲泊。

1.在合適的時候使用PHP–RasmusLerdorf

沒有誰比PHP的創(chuàng)建者RasmusLerdorf明白PHP用在什么地方是更合理的,他于1995年發(fā)布了PHP這門語言催蝗,從那時起切威,PHP就像燎原之火,燒遍了整個開發(fā)陣營丙号,改變了互聯(lián)網(wǎng)的世界先朦。可是犬缨,Rasmus并不是因此而創(chuàng)建PHP的喳魏。PHP是為了解決WEB開發(fā)者的實際問題而誕生的。

和許多開源項目一樣怀薛,PHP變得流行刺彩,流行的動機并不能用正常的哲學(xué)來進行解釋,甚至流行得有些孤芳自賞。它完全可以作為一個案例迂苛,一個解決各種Web問題的工具需求所引起的案例三热,因此當PHP剛出現(xiàn)的時候,這種工具需求全部聚焦到PHP的身上三幻。

但是,你不能奢望PHP可以解決所有問題呐能。Lerdorf是第一個承認PHP只是一種工具的人念搬,并且PHP也有很多力所不能及的情況。

根據(jù)工作的不同來選擇合適的工具摆出。我跑了很多家公司朗徊,為了說服他們部署和使用PHP,但是這并不意味著PHP對所有問題都適用偎漫。它只是可以一個解決大部分問題的front-end腳步語言爷恳。

作為一個web開發(fā)者,嘗試用PHP解決所有問題是不科學(xué)的象踊,同時也會浪費你的時間温亲。當PHP玩不轉(zhuǎn)的時候,不要猶豫杯矩,試用一下其他的語言吧栈虚。

2.使用多表存儲提高規(guī)模伸縮性–MattMullenweg

沒有人愿意質(zhì)疑MattMullenweg在PHP方面的權(quán)威性,他開發(fā)了這個星球上最流行的blog系統(tǒng)史隆,(依靠一個強大的社區(qū)力量支持):WordPress.創(chuàng)建Wordpress以后魂务,Matt和他的團隊啟動了WordPress.com平臺,一個基于WordPressMU的免費blog站點∶谏洌現(xiàn)在粘姜,Wordpress.com已經(jīng)擁有大約400萬用戶,這些用戶每天提供超過140,000篇的日志熔酷。

如果有人知道如何讓網(wǎng)站的規(guī)模伸縮自如孤紧,這個人一定是MattMullenweg。2006年的時候Matt對Wordpress的數(shù)據(jù)結(jié)構(gòu)進行了前瞻性的改進纯陨,并且解釋了為什么WordpressMU對每個blog使用獨立的MYSQL表格坛芽,而不是把所有的blog數(shù)據(jù)都塞進一個巨大的表格。

我們測試過這個方法翼抠,但是發(fā)現(xiàn)如果要擴展它的伸縮性咙轩,代價太高。如果用一個整體的數(shù)據(jù)結(jié)構(gòu)阴颖,在大流量面前活喊,你將會面臨服務(wù)器硬件的問題。在MU里面量愧。用戶們都被分布到獨立的表格當中钾菊,并且可以輕易地組織起來帅矗。舉個例子,WordPress.com把用戶的數(shù)據(jù)分散存儲到4096個數(shù)據(jù)庫中煞烫,這些數(shù)據(jù)庫可以分散大規(guī)模的數(shù)據(jù)訪問浑此,實現(xiàn)流量和壓力分流。

數(shù)據(jù)表的可遷移性讓代碼(blog)可以運行得更快滞详,并且讓系統(tǒng)具備更強的伸縮性凛俱。依靠強大的緩存策略和靈活的數(shù)據(jù)庫運用策略,Matt向人們展示了時下最流行的Facebook和Wordpress.com都可以在PHP下穩(wěn)定運行料饥,并且處理驚人的訪問量蒲犬。

3.千萬不要相信用戶–DaveChild

DaveChild是AddedBytes(previouslyilovejackdaniels.com)網(wǎng)站的核心人物,這個網(wǎng)站以他出色的《cheatsheetsformanyprogramminglanguages》而聞名岸啡。Dave為很多英國的公司服務(wù)原叮,并且已經(jīng)在編程世界里樹立起相當?shù)臋?quán)威。

Dave為PHP開發(fā)者提供了很多深謀遠慮的建議巡蘸,并總結(jié)成了《writingsecurecodeinPHP》:千萬不要相信你的用戶奋隶,他們甚至可能會傷害你。

有一條web開發(fā)的基本原則赡若,我重復(fù)多少遍都覺得不夠达布,那就是:千萬不要相信你的用戶,同時要假設(shè)你網(wǎng)站中的每個數(shù)據(jù)單元都是從用戶那里收集來的惡意代碼逾冬。很多時候黍聂,你必須用JAVAscript在客戶端檢驗表單提交過來的內(nèi)容,如果你習慣了如此身腻,那么产还,這是一個好習慣。如果安全性對你來說很重要嘀趟,這就是最重要最需要學(xué)習的原則脐区。

Dave目前正致力于為它的《WritingSecurePHP》系列書籍整理實例,書的最后他說:

最后她按,變得偏執(zhí)一點吧牛隅。除非你認為你的站點永遠不會受到攻擊,否則就正視所有的問題酌泰,當問題真正發(fā)生的時候媒佣,你的情況會變得很糟。你需要把每個用戶都看成會帶來一場攻防站的黑客陵刹,想盡一切辦法來保護站點的安全默伍,同時想好相應(yīng)問題的解決方案。

4.多使用PHP緩存–BenBalbo

BenBalbo開發(fā)了SitePoint,一個為developers和designers提供指導(dǎo)的網(wǎng)站也糊。他是墨爾本PHP開發(fā)和開源俱樂部的成員炼蹦,因此他對PHP有一定的了解,同時對PHPcaching有一定的想法和經(jīng)驗狸剃。

如果你擁有一個訪問量很大掐隐,但更新并不頻繁的站點(比如blog,基于某種CMS)钞馁,或許它需要進行一些改造瑟枫,這些改造不會花費太多的時間,但是對性能有突出的貢獻指攒。如果要為一個復(fù)雜/更新頻率很快的站點建立緩存機制,過程可能會很曲折僻焚,但是好處也是顯而易見的允悦。

PHP緩存技術(shù)有很多種,Ben為我們推薦了如下一些:

緩存函數(shù)的運行結(jié)果

設(shè)置過期時間

緩存IE下載的文件

模板緩存技術(shù)

Cache_Lite

由于PHP作為動態(tài)語言的特性虑啤,緩存機制對于更新頻率并不快的站點來說非常重要隙弛。

5.使用IDE,Templates和Snippets加速PHP開發(fā)–ChadKieffer

當ChadKieffer從UI設(shè)計和數(shù)據(jù)庫優(yōu)化的工作中抽身出來的時候,他會在他的博客2tablespoons上分享很多技術(shù)經(jīng)驗狞山。由于Chad多方面的全面發(fā)展全闷,他經(jīng)常可以發(fā)現(xiàn)其他程序員不能發(fā)現(xiàn)的問題萍启,并形成相關(guān)經(jīng)驗总珠,尤其是他開發(fā)網(wǎng)站的方法。他參與了網(wǎng)站開發(fā)的各個環(huán)節(jié)勘纯,因此他的建議對于提高網(wǎng)站開發(fā)的大局觀非常有用局服。

Chad認為使用EclipsePDT(Eclipse’sPHPdevelopmentpackage)這樣的IDE,同時使用一些模板技術(shù)和開源項目可以有效地提高PHP的開發(fā)速度驳遵。

緊湊的計劃淫奔,長長的todolists以及deadlines讓開發(fā)人員非常苦悶堤结。不過有些功能唆迁,比如EclipseTemplates,可以有效減少編碼的時間和出錯的幾率竞穷。

通常來說唐责,任何項目都可以自動化,自動化程度越高来庭,你完成項目的時間就越短妒蔚。花時間來開發(fā)使用頻率很高的框架和模板,將會節(jié)省你以后更多時間肴盏。同時科盛,使用像EclipseandthePDTpackage這樣的IDE,你會發(fā)現(xiàn)效率得到明顯提高菜皂,IDE可以自動閉合贞绵,補全分號并且可以在本地debug。

如果你已經(jīng)決定要學(xué)好PHP恍飘,找一家靠譜的培訓(xùn)機構(gòu)榨崩,將會讓你的學(xué)習過程事半功倍。

“年度最受信賴職業(yè)教育品牌”千鋒教育章母,一直秉承“用良心做教育”的理念母蛛,同期在校學(xué)員5000余人,合作院校超500所乳怎,合作企業(yè)超10000家彩郊。全國有十三個校區(qū)。數(shù)十位總監(jiān)級專家講師全職授課蚪缀,200余位業(yè)內(nèi)強師全程面授秫逝。

“中國教育集團領(lǐng)先品牌”千鋒教育,關(guān)注學(xué)員和企業(yè)的雙向需求询枚,每年為企業(yè)輸出20000+計算機精英违帆,畢業(yè)學(xué)員占據(jù)全國移動互聯(lián)網(wǎng)培訓(xùn)人才一半以上的份額。畢業(yè)學(xué)員平均薪資也是全行業(yè)最高金蜀。

“年度最具影響力IT教育機構(gòu)”千鋒教育PHP課程的教學(xué)老師刷后,全部來自央企及上市公司,平均從業(yè)經(jīng)驗5年以上廉油。而且千鋒教育的老師實行淘汰制惠险,學(xué)生進行匿名投票。留下來的都是經(jīng)過學(xué)生投票檢驗過的名師抒线;

千鋒教育的PHP課程采用實戰(zhàn)教學(xué)和分階教學(xué)模式班巩。課程內(nèi)容緊貼名企需求,以實戰(zhàn)傳授理論嘶炭,不談虛的抱慌,只教真的。千鋒教育力求將學(xué)員打造成具備完美職場競爭力的精英眨猎。千鋒教育也是學(xué)員項目敢上線的唯一機構(gòu)抑进。

千鋒教育PHP培訓(xùn)班畢業(yè)學(xué)員,其平均年薪相比行業(yè)平均年薪睡陪,足足高出五萬寺渗。

學(xué)PHP匿情,首選千鋒教育。千鋒教育力造IT培訓(xùn)領(lǐng)導(dǎo)品牌信殊,學(xué)員百分之九十以上都是大專以上學(xué)生炬称,力求為你營造最優(yōu)質(zhì)的學(xué)習環(huán)境。

千鋒教育現(xiàn)更有0學(xué)費入學(xué)涡拘、2周免費試聽玲躯、跨學(xué)科周末班限時免費送活動,一次報名鳄乏,學(xué)習雙技能跷车,如同打了五折。歡迎你前來咨詢橱野,試聽朽缴。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市水援,隨后出現(xiàn)的幾起案子不铆,更是在濱河造成了極大的恐慌,老刑警劉巖裹唆,帶你破解...
    沈念sama閱讀 222,464評論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異只洒,居然都是意外死亡许帐,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,033評論 3 399
  • 文/潘曉璐 我一進店門毕谴,熙熙樓的掌柜王于貴愁眉苦臉地迎上來成畦,“玉大人,你說我怎么就攤上這事涝开⊙剩” “怎么了?”我有些...
    開封第一講書人閱讀 169,078評論 0 362
  • 文/不壞的土叔 我叫張陵舀武,是天一觀的道長拄养。 經(jīng)常有香客問我,道長银舱,這世上最難降的妖魔是什么瘪匿? 我笑而不...
    開封第一講書人閱讀 59,979評論 1 299
  • 正文 為了忘掉前任,我火速辦了婚禮寻馏,結(jié)果婚禮上棋弥,老公的妹妹穿的比我還像新娘。我一直安慰自己诚欠,他們只是感情好顽染,可當我...
    茶點故事閱讀 69,001評論 6 398
  • 文/花漫 我一把揭開白布漾岳。 她就那樣靜靜地躺著,像睡著了一般粉寞。 火紅的嫁衣襯著肌膚如雪尼荆。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,584評論 1 312
  • 那天仁锯,我揣著相機與錄音耀找,去河邊找鬼。 笑死业崖,一個胖子當著我的面吹牛野芒,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播双炕,決...
    沈念sama閱讀 41,085評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼狞悲,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了妇斤?” 一聲冷哼從身側(cè)響起摇锋,我...
    開封第一講書人閱讀 40,023評論 0 277
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎站超,沒想到半個月后荸恕,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,555評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡死相,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,626評論 3 342
  • 正文 我和宋清朗相戀三年融求,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片算撮。...
    茶點故事閱讀 40,769評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡生宛,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出肮柜,到底是詐尸還是另有隱情陷舅,我是刑警寧澤,帶...
    沈念sama閱讀 36,439評論 5 351
  • 正文 年R本政府宣布审洞,位于F島的核電站莱睁,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏芒澜。R本人自食惡果不足惜缩赛,卻給世界環(huán)境...
    茶點故事閱讀 42,115評論 3 335
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望撰糠。 院中可真熱鬧酥馍,春花似錦、人聲如沸阅酪。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,601評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至砚尽,卻和暖如春施无,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背必孤。 一陣腳步聲響...
    開封第一講書人閱讀 33,702評論 1 274
  • 我被黑心中介騙來泰國打工猾骡, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人敷搪。 一個月前我還...
    沈念sama閱讀 49,191評論 3 378
  • 正文 我出身青樓兴想,卻偏偏與公主長得像,于是被迫代替她去往敵國和親赡勘。 傳聞我的和親對象是個殘疾皇子嫂便,可洞房花燭夜當晚...
    茶點故事閱讀 45,781評論 2 361

推薦閱讀更多精彩內(nèi)容