五月综合缴情婷婷六月,色94色欧美sute亚洲线路二,日韩制服国产精品一区,色噜噜一区二区三区,香港三级午夜理伦三级三

您現(xiàn)在的位置: 365建站網(wǎng) > 365文章 > PHP 的八卦兩則

PHP 的八卦兩則

文章來源:365jz.com     點擊數(shù):151    更新時間:2009-12-20 00:36   參與評論

PHP5.3 的正式發(fā)布,又重新關(guān)注起其語言本身。細心的朋友可能發(fā)現(xiàn),PHP5.3 增加了 goto 語句,這在結(jié)構(gòu)化語言今天似乎是有點不可思議的事情。

按照官方的說法,其實這和我們傳統(tǒng)理解的 goto 還是有所差別。PHP 5.3 中的 goto 語句只能在腳本文件以及上下文中跳轉(zhuǎn),因此它無法從某函數(shù)或方法跳到其他的函數(shù)或者方法 -- 這不得不讓我懷疑是否是“妥協(xié)”的結(jié)果。

看來 PHP 語言的設(shè)計者對 goto 語句應(yīng)用是方便從從多重循環(huán)體中跳出(在其文檔中的例子也說明了這點)。但其實這功能的本身也引發(fā)了不少的爭議,個人也隱約的聞到了潘多拉身上的香水味。

其實“好事者”早在 2007 年就開始“期待”這項“新功能”,相信他現(xiàn)在會很開心。不過有趣的是這篇文章的留言給原作者潑了盆冷水。的確,goto 語句所能完成的功能,其實善用 switch 也能做到,而且更有可讀性。

不過不管怎么樣,語言本身僅僅是工具而已。從程序的本身角度考慮(不僅僅是 PHP),如果有過多的循環(huán)等的語塊嵌套,那就說明這段代碼必須需要優(yōu)化了。到底應(yīng)不應(yīng)該使用 goto 語句,其實本人和其他的 PHP 人員也有過討論。

最終,大家較為統(tǒng)一的觀點就是,避免使用。

“PHP 的 10 宗罪”

老外較起真來真的非常讓人受不了,這不又有好事者總結(jié)了 PHP 語言本身語法的 “10 宗罪”。其實,我個人這與其稱為“Mistake”,還說是 PHP 提供的“美麗的陷阱”。

例如,文中提到的有關(guān)單引號和雙引號的變量轉(zhuǎn)義問題。其實這一爭論的聲音從學(xué) PHP 起就在耳畔充斥。甚至記得當(dāng)年還有道經(jīng)典的面試題,就是考單引號和雙引號的的速度孰快 -- 回過頭來看,這論點就猶如此道面試題一樣,是沒有任何的意義的。

但這不代表文中的些“Mistake”都可以當(dāng)作笑談,有些是的確需要注意的。例如

以下為引用的內(nèi)容:

$i = 0;
while($i < 20); {
    //some code here
    $i++;
}
 


這樣的寫法。對應(yīng)的其實還有 for 語句,我們可能“手殘”多寫了個分號(不要不承認),那么就只能祈禱 set_time_limit 的數(shù)字小些了。

文中指出的其他些問題,也是我們需要納入思考的范圍中,例如數(shù)據(jù)庫存取的緩存問題。為何 PHP 為何至今沒有數(shù)據(jù)池這樣的概念,其實這需要從 PHP 這門語言本身的設(shè)計哲學(xué)出發(fā)了。從此問題其實可以引申爭為何 PHP 沒有走向 Java 的套路,好吧這問題又可以爭論一番了。

文中還有其他類似的條目,都非常的具有爭議(也許搞不好這就是作者的初衷),但無論怎么說,其提出的幾個問題都是值得我們?nèi)ニ伎嫉摹?/P>

深夜雜談隨想,亂語之處眾位見笑了,歡迎發(fā)表您的看法

本文作者:未知

如對本文有疑問,請?zhí)峤坏浇涣髡搲?,廣大熱心網(wǎng)友會為你解答!! 點擊進入論壇

發(fā)表評論 (151人查看0條評論)
請自覺遵守互聯(lián)網(wǎng)相關(guān)的政策法規(guī),嚴禁發(fā)布色情、暴力、反動的言論。
昵稱:
最新評論
------分隔線----------------------------

其它欄目

· 建站教程
· 365學(xué)習(xí)

業(yè)務(wù)咨詢

· 技術(shù)支持
· 服務(wù)時間:9:00-18:00
365建站網(wǎng)二維碼

Powered by 365建站網(wǎng) RSS地圖 HTML地圖

copyright © 2013-2024 版權(quán)所有 鄂ICP備17013400號