您好,登錄后才能下訂單哦!
這篇文章將為大家詳細(xì)講解有關(guān)php不能做大型系統(tǒng)的原因,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。
php不能做大型系統(tǒng)的原因
混亂的許可證
你也許認(rèn)為PHP是免費的,所有的在手冊中提到的PHP模塊也是免費的。錯了!例如,如果你想在PHP中生成PDF文件,你會在手冊中發(fā)現(xiàn)兩個模塊:PDF 和 ClibPDF。但是這兩個都是有商業(yè)許可證的。所以,你所使用的每個模塊,你都要確保你同意他的許可證。
不一致的函數(shù)命名規(guī)則
有些函數(shù)名稱是有多個單詞組成的。一般有三種單詞組合的習(xí)慣:
直接拼接:getnumberoffiles
用下劃線分開:get_number_of_files
駱駝法則:getNumberOfFiles
大部分語言選擇其中一中。但是PHP都用到了。
魔法引用的地獄
魔法引用(Magic quote)可以保護PHP腳本免受SQL注入攻擊。這很好。但是出于某些原因,你可以在php.ini中關(guān)閉這個配置。所以你如果要寫出一個有彈性的腳本,你總要檢查魔法引用是開啟還是關(guān)閉。這樣一個“特性”應(yīng)該讓編程更簡單,而事實上變得更復(fù)雜了。
許多PHP模塊都不是線程安全的
在幾年前,Apache發(fā)布了Web服務(wù)器的2.0版。這個版本支持多線程模式,在這個模式下,軟件一個一部分可以同時運行多個。PHP的發(fā)明者說PHP的核心是線程安全的,但是非核心模塊不一定是。但是十次有九次,你想要在PHP腳本中使用這種模塊,但這又使你的腳本不能合適Apache的多線程模式。這也是為什么PHP小組不推薦在Apache 2 的多線程模式下運行PHP。不良的多線程模式支持使PHP常被認(rèn)為是Apache 2依然不流行的原因之一。
不標(biāo)準(zhǔn)的日期格式字符
很多程序員對 日期格式字符 都很熟悉,它是從UNIX和C語言中來的。其他一些編程語言采用了這個標(biāo)準(zhǔn),但是很奇怪的,PHP有它自己的一套完全不兼容的日期格式字符。在C中,“%j”表示一年中的當(dāng)天,在PHP中他表示一個月中的當(dāng)天。然而使事情更混亂的是:Smarty (一個很流行的PHP模版引擎)的 strftime 函數(shù)和 date_format 函數(shù),卻使用了C/UNIX的格式化字符。
關(guān)于php不能做大型系統(tǒng)的原因就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。