亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > PHP > 正文

關于PHP開發的9條建議

2020-03-22 18:19:09
字體:
來源:轉載
供稿:網友
本文只是個人從實際開發經驗中總結的一些東西,并不是什么名言警句,寫出來有兩個目的:一是時刻提醒自己要按照這些知識點來寫自己代碼,二是為了分享,說不定對你有用呢?萬一,是吧。。。1.首要意識:安全大多數時候,我們開發的Web程序都是需要跟數據庫打交道的,所以這里幾乎可以說SQL注入是一個怎么也無法避免要拿出來討論一下的問題。而且近年來像XSS和CSRF攻擊也變得大行其道,使得"黑客"們貌似又有了一把把利器,而我們總是處于被動的狀態。不過我們要記得是下面這兩個原則:1. 永遠不要相信用戶輸入的東西。(老話了,但這是真的)
2. 將自己需要輸出的數據進行轉義。簡單來說就是:filter input , escape output如果你是新手,不要再使用類似以下的查詢語句了:SELECT FROM users WHERE username = $_POST['username'] AND password = $_POST['password'];還有就是,使用PDO或Mysqli吧,不要再使用老式的mysql操作了。而對于,CSRF的解決方案,目前接觸的都是給每一次的表單提交都設置一個token值,然后在表單提交的時候校驗之即可。2.明確地知道各個比較操作符的差別PHP的比較操作符,這其實可以說是一個很小的注意點,但是在某些時候真的很重要。比如說很多時候我們得考慮清楚,該用==還是===,如果你使用過strpos()這個函數,下面的代碼可能會給你一個直觀的感受:$authors = 'Chris if (strpos($authors, 'Chris')) { echo 'Chris is an author.';} else { echo 'Chris is not an author.';上面這段代碼的運行結果其實是輸出Chris is not an author,但是現實情況是,Chris & Sean真的是Author啊,怎么回這樣呢?其實是這樣的:Chris正好出現在Chris & Sean首位開始處,也就是0這個位置,所以substr()返回了,由于條件判斷語句中bool判斷,所以0作為了false處理,于是程序輸出了Chris is not an author,但是在這種情況之下我們該怎么處理呢?我們其實可以這樣的:if (strpos($authors, 'Chris') !== FALSE) { echo 'Chris is an author.';} else { echo 'Chris is not an author.';
3.可以減少使用else就少使用else這個貌似從我一開始接觸編程就有的一個想法,因為每次看到if(){}else{}就有一種這一段其實可以寫得更好的感覺,因為一旦你減少了使用else關鍵字,你得代碼會減少兩行!沒錯,兩行也是我們的追求,而且,從我的經驗看,else少的代碼貌似可讀性更高,對我來說。if( this condition )$x = 5;$x = 10;如果,在$x的默認值是10,還是下面這樣寫感覺比較好:$x = 10;if( this condition )$x = 5;4.去掉不必要的括號這里的目的其實跟else關鍵字部分是一樣的,我們是為了更簡短的代碼和更優越的可讀性,對以下的情況,你都應該考慮優化代碼:if ($gollum == 'halfling') {$height --;其實是可以這樣的:if ($gollum == 'halfling') $height --;你甚至可以這樣:if ($gollum == 'halfling') $height --;else $height ++; if ($frodo != 'dead')echo 'Gosh darnit, roll again Sauron';foreach ($kill as $count)echo 'Legolas strikes again, that makes' . $count . 'for me!';
5.多用str_replace()在很多時候我們需要對一些字符串進行替換,在PHP中有以下幾個函數可以達到這個目的:str_replace()ereg_replace()preg_replace()如果你確實是需要使用正則匹配,那就使用preg_replace(),而如果在可實現替換的情況下,請使用str_replace(),因為據不完全統計,str_replace()的效率在這三個當中是最高的。6.使用三元運算符這個可能很多人都有這個感受,使用三元運算符之后,我們可以去掉一堆if else語句了,代碼又短又爽。$host = strlen($host) 0 $host : htmlentities($host);7.使用緩存目前PHP熱門的緩存技術可能就是Redis和Memcached了,在PHP的官方文檔中,也有Memcached的使用教程,至于Redis,我最近在研究中,后續會給出一些教程,如果一切順利的話。8.使用框架框架的好處很多,可能是在性能方面有所損失外,貌似找不到不用框架的理由了,框架即可以加快你的開發速度,也可以讓你在寫代碼的過程中擼的舒舒服服,而且想很多安全問題,你都會得到很好的解決。我這里首推Laravel,不過像Yii2 Slim Symfony都是非常棒的框架,除了Symfony沒有嘗過過之外,剩下的三個我都有使用經歷,最后就基本是用Laravel了。不過我建議的Laravel可能不適合你,這還是得看個人喜好。9.用isset()代替strlen()如果你需要在項目代碼中需要根據一個字符串的長度來做條件判斷,這個時候非常推薦你直接使用isset(),因為在同等條件之后,isset()的速度是strlen()的五倍左右,所以:if (isset($username[5])) { // The username is at least six characters long.
以上的兩個條件判斷都是可以達到相同的目的,但是我推薦使用的是第一種。以上所述就是本文的全部內容了,希望大家能夠喜歡PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产欧美日韩精品专区| 亚洲天堂开心观看| 日韩中文字幕第一页| 国产一区av在线| 97在线精品国自产拍中文| 91视频国产一区| 中文字幕亚洲国产| 国产一区二区三区视频免费| 亚洲女人天堂av| 成人黄色短视频在线观看| 亚洲国内精品视频| 精品偷拍一区二区三区在线看| 欧美电影在线观看高清| 91中文在线观看| 一区二区在线免费视频| 51色欧美片视频在线观看| 国产成人黄色av| 久久久久久久成人| 91成人精品网站| 欧美激情中文字幕在线| 一本大道亚洲视频| 97成人精品视频在线观看| 日韩国产精品亚洲а∨天堂免| 麻豆一区二区在线观看| 性色av一区二区三区免费| 亚洲欧美日韩国产中文| 在线观看久久久久久| 亚洲欧洲日产国码av系列天堂| 久久99国产综合精品女同| 亚洲欧美日本伦理| 国产剧情久久久久久| 7777kkkk成人观看| 国产欧美日韩丝袜精品一区| 成人中文字幕在线观看| 成人乱人伦精品视频在线观看| 中文.日本.精品| 国产日产久久高清欧美一区| 日韩在线观看精品| 久热精品在线视频| 国产福利精品在线| 日韩有码在线视频| 欧美激情影音先锋| 中文字幕亚洲第一| 亚洲自拍偷拍第一页| 久热精品视频在线| 国产精品视频一区二区三区四| www.亚洲男人天堂| 亚洲一区二区日本| 久久久精品2019中文字幕神马| 成人www视频在线观看| 亚洲女人初尝黑人巨大| 日韩免费观看网站| 黑人巨大精品欧美一区二区三区| 国产欧美一区二区三区视频| 97视频在线观看免费高清完整版在线观看| 国产精品露脸自拍| 亚洲人成绝费网站色www| 深夜福利91大全| 国产精品白丝jk喷水视频一区| 日韩成人av在线播放| 亚洲一区二区三区成人在线视频精品| 国产精品视频播放| 91九色国产在线| 欧美一级在线亚洲天堂| 国产精品电影观看| 久久精品99无色码中文字幕| 欧美激情一区二区三区在线视频观看| 这里只有精品丝袜| 亚洲国产精品成人一区二区| 国产美女精彩久久| 成人美女免费网站视频| 欧美色另类天堂2015| 国产精品福利久久久| 欧美精品一区二区免费| 一区二区三区久久精品| 国产成人精品一区| 国产精品美女呻吟| 亚洲激情在线观看| 高跟丝袜一区二区三区| 欧美最猛性xxxxx亚洲精品| 欧美激情精品久久久久久| 国产精品第1页| 91国内揄拍国内精品对白| 欧美日韩在线第一页| 亚洲大尺度美女在线| 亚洲精品国精品久久99热| 亚洲一区二区在线| 在线日韩第一页| 国产精品久久久久久久久久久新郎| xxxx性欧美| 欧美成人免费一级人片100| 国产亚洲精品久久久久久777| 91精品中文在线| 欧美在线视频网站| 日韩欧美主播在线| 欧美日韩亚洲91| 亚洲国产精品久久久久| 国产精品久久久久aaaa九色| 成人网在线免费看| 91免费在线视频| 精品欧美aⅴ在线网站| 青青草国产精品一区二区| 成人激情视频在线| 视频在线一区二区| 日韩中文字幕在线播放| 2019最新中文字幕| 亚洲欧美综合v| 97高清免费视频| 欧美区二区三区| 国产91亚洲精品| 色综合久综合久久综合久鬼88| 91精品国产色综合久久不卡98口| 中文字幕国产日韩| 欧美尤物巨大精品爽| 色噜噜狠狠狠综合曰曰曰| 亚洲xxxxx电影| 久久精品国产91精品亚洲| 中文字幕日韩免费视频| 国产亚洲欧美日韩一区二区| 欧美在线中文字幕| 啪一啪鲁一鲁2019在线视频| 91日韩在线播放| 亚洲国产精品久久久久久| 日韩美女av在线免费观看| 亚洲国产精彩中文乱码av在线播放| 欧美巨大黑人极品精男| 国产精品第七十二页| 久久五月情影视| 黄色一区二区三区| 欧美日韩性视频| 在线观看国产精品日韩av| 美女av一区二区三区| 日韩精品视频免费在线观看| 欧美精品一本久久男人的天堂| 亚洲美女久久久| 欧美激情极品视频| 欧美日韩免费区域视频在线观看| 日韩av手机在线| 亚洲欧美日韩图片| 日韩av中文在线| 国产精品欧美日韩| www.日韩.com| 国产亚洲一区二区精品| 91嫩草在线视频| 92福利视频午夜1000合集在线观看| 一本一本久久a久久精品综合小说| 国产亚洲精品美女久久久| 午夜精品一区二区三区在线播放| 亚洲精品有码在线| 国产精品ⅴa在线观看h| 草民午夜欧美限制a级福利片| 久久亚洲国产成人| 国产精品白丝av嫩草影院| 精品亚洲男同gayvideo网站| 色妞色视频一区二区三区四区| 中文字幕精品网| 日韩av中文字幕在线播放| 亚洲va码欧洲m码| 久久露脸国产精品| 国产欧美最新羞羞视频在线观看| 国产精品69久久久久| 国产精品稀缺呦系列在线| 亚洲高清在线观看| 色琪琪综合男人的天堂aⅴ视频|