備案號:遼ICP備19007957號-1
聆聽您的聲音:feedback@highmark.com.cn企業(yè)熱線:400-778-8318
Copyright ?2015- 海馬課堂網(wǎng)絡(luò)科技(大連)有限公司辦公地址:遼寧省大連市高新技術(shù)產(chǎn)業(yè)園區(qū)火炬路32A號創(chuàng)業(yè)大廈A座18層1801室
作為一個PHP程序員新手,有幾個錯誤是每個人都會犯的。這些錯誤是非常基本的,可以很容易地避免的。例如,當(dāng)你打算對事物進(jìn)行比較(使用==運(yùn)算符)時,使用 "賦值 "運(yùn)算符(=)。如果你是從C或C++編程開始的,你最容易犯這種錯誤。同樣地,如果你用一個數(shù)字除以 "0",PHP也不會寬容,會立即拋出一個錯誤。這篇文章為大家?guī)戆闹蘖魧W(xué)生PHP編碼時要避免的5個錯誤。
一、不重寫Url
現(xiàn)代的做法要求你重寫的URL是干凈的、可讀的。有各種框架指南(如Symfony和Zend),可以幫助你學(xué)習(xí)編寫這種URL的藝術(shù)和科學(xué)。一個使用了太多變量的URL是不容易閱讀的。
請注意,搜索引擎將連字符視為空格,因此,在重寫URL時,應(yīng)首選連字符而非下劃線。
Apache自帶URL重寫模塊,并啟用了mod_rewrite。對于微軟的服務(wù)器軟件--IIS,有一些插件,如ISAPI_Rewrite,可用于URL重寫。
二、仍然停留在mysql擴(kuò)展上
MySQL擴(kuò)展現(xiàn)在已經(jīng)過時了。PHP 5.5.0 棄用了它,棄用通知出現(xiàn)在應(yīng)用程序的頂部。黑客可以很容易地使用谷歌訪問這些通知,并發(fā)現(xiàn)你的網(wǎng)站是不安全的,容易受到攻擊。此外,如果你繼續(xù)使用MySQL擴(kuò)展,你的網(wǎng)站不支持SSL,被認(rèn)為是不可靠的。
建議你使用MySQLi擴(kuò)展,而不是(或遷移到它上面),因?yàn)樗欤哂性鰪?qiáng)的安全和調(diào)試功能,并支持:
準(zhǔn)備好的語句、
程序性以及面向?qū)ο蟮慕涌凇?/p>
存儲過程,以及
通過API進(jìn)行交易。
三、不使用或少使用PDO
PHP數(shù)據(jù)對象(PDO)是一個節(jié)省時間的功能,它允許你直接在對象中獲取數(shù)據(jù)并輕松使用命名參數(shù)。你可以使用面向?qū)ο蟮恼Z法,使你的代碼與流行的數(shù)據(jù)庫如MS SQL和PostgreSQL保持一致。
盡管網(wǎng)上有成百上千的教程,但PDO的一半功能仍然晦澀難懂,PHP開發(fā)者一直試圖重新發(fā)明PDO中已經(jīng)存在的東西。
PDO是一個數(shù)據(jù)庫訪問抽象層,它作為一個統(tǒng)一的接口來訪問許多不同的數(shù)據(jù)庫,并有助于自動進(jìn)行一些基本的操作,這些操作在你編寫應(yīng)用程序代碼時需要重復(fù)數(shù)百次。PHP作業(yè)寫作專家經(jīng)常使用PDO,以快速得出一個干凈和安全的PHP代碼。
四、跳過數(shù)據(jù)庫緩存
緩存增強(qiáng)了應(yīng)用程序或網(wǎng)站的性能以及用戶體驗(yàn)。PHP中的緩存是指將信息(如HTML頁面、Web對象和文件)儲存在用戶的本地硬盤中,以供將來使用。
在PHP中,有三樣?xùn)|西可以被緩存:內(nèi)容、內(nèi)存和數(shù)據(jù)庫。為了緩存內(nèi)容,我們把一個特定的PHP腳本的最終輸出保存在文件系統(tǒng)中。由于繞過了數(shù)據(jù)庫的訪問,它的加載速度會比以前的請求快。
內(nèi)存緩存比文件系統(tǒng)中的緩存更快,它使用Opcode Cache、APC(必須單獨(dú)安裝)和Memcached的功能。雖然大多數(shù)PHP開發(fā)者在應(yīng)用層做了內(nèi)容和內(nèi)存緩存,但他們經(jīng)常忘記做數(shù)據(jù)庫緩存,而數(shù)據(jù)庫緩存需要在數(shù)據(jù)庫服務(wù)器上完成。
當(dāng)你對數(shù)據(jù)庫的查詢結(jié)果進(jìn)行緩存時,查詢將不需要被反復(fù)解析--而且得到更快處理。
五、對錯誤的不當(dāng)處理
錯誤的出現(xiàn)標(biāo)志著某些地方出現(xiàn)了問題。當(dāng)我們壓制錯誤時,我們允許應(yīng)用程序繼續(xù)運(yùn)行,盡管有潛在的錯誤--并且不做任何處理。另一方面,網(wǎng)站或應(yīng)用程序上有太多的錯誤會讓終端用戶感到困惑和煩躁。
通常情況下,人們會建議開發(fā)人員使用Php.ini文件將錯誤重定向到錯誤日志中,但這可能會大大降低網(wǎng)站的速度--特別是當(dāng)網(wǎng)站上有高流量時。定制的錯誤處理程序,如Papertrail(可作為一個PHP插件),可以解決這個問題。它們可以將錯誤發(fā)送到后端,不允許顯示在屏幕上,并且只有在發(fā)生嚴(yán)重錯誤時才結(jié)束應(yīng)用程序。然后,程序員可以在以后搜索這類錯誤并修復(fù)它們。
海馬課堂留學(xué)生作業(yè)輔導(dǎo),根據(jù)學(xué)生的輔導(dǎo)需求匹配背景相符的專業(yè)老師。1V1個性化備課,雙語教學(xué),實(shí)時輔導(dǎo),講解相關(guān)知識點(diǎn)和解題思路,提供大型作業(yè)任務(wù)的解決方案,輔導(dǎo)計(jì)算機(jī)編程語言操作,教授學(xué)生高效完成PPT和演講稿,針對性解決留學(xué)生各類作業(yè)中遇到的困擾,提高作業(yè)成績!
閱讀原文:http://cheshan.cn/news/13518_62.html
版權(quán)作品,未經(jīng)海馬課堂 highmarktutor.com 書面授權(quán),嚴(yán)禁轉(zhuǎn)載,違者將被追究法律責(zé)任。
24h在線客服



備案號:遼ICP備19007957號-1
聆聽您的聲音:feedback@highmark.com.cn企業(yè)熱線:400-778-8318
Copyright ?2015- 海馬課堂網(wǎng)絡(luò)科技(大連)有限公司辦公地址:遼寧省大連市高新技術(shù)產(chǎn)業(yè)園區(qū)火炬路32A號創(chuàng)業(yè)大廈A座18層1801室
hmkt088