国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > PHP > 正文

細(xì)數(shù)PHP程序的一些缺陷

2020-03-24 17:02:23
字體:
供稿:網(wǎng)友
PHP確實十分容易編寫。但是PHP也有一些十分嚴(yán)重的缺陷。下面我會給出我的理由,為什么PHP不適合于比小型業(yè)余網(wǎng)站更大的網(wǎng)站。 1、對遞歸的不良支持 遞歸是一種函數(shù)調(diào)用自身的機(jī)制。這是一種強大的特性可以把某些復(fù)雜的東西變得很簡單。有一個使用遞歸的例子是快速排序(quicksort)。不幸的是,PHP并不擅長遞歸。Zeev,一個PHP開發(fā)人員,說道: PHP 4.0(Zend)對密集數(shù)據(jù)使用了棧方式,而不是使用堆方式。也就是說它能容忍的遞歸函數(shù)的數(shù)量限制和其他語言比起來明顯少。 見bug 1901。這是一個很不好的借口。每一個編程語言都應(yīng)該提供良好的遞歸支持。 2、許多PHP模塊都不是線程安全的 在幾年前,Apache發(fā)布了Web服務(wù)器的2.0版。這個版本支持多線程模式,在這個模式下,軟件一個一部分可以同時運行多個。PHP的發(fā)明者說PHP的核心是線程安全的,但是非核心模塊不一定是。但是十次有九次,你想要在PHP腳本中使用這種模塊,但這又使你的腳本不能合適Apache的多線程模式。這也是為什么PHP小組不推薦在Apache 2 的多線程模式下運行PHP。不良的多線程模式支持使PHP常被認(rèn)為是Apache 2依然不流行的原因之一。 3、PHP 由于商業(yè)原因而不健全 通過使用緩存,PHP的性能可以陡增500%[見基準(zhǔn)測試]。那么為什么緩存沒有被構(gòu)建在PHP中呢?因為Zend PHP的制造者,它在銷售自己的Zend Accelerator,所以當(dāng)然,他們不想拋棄自己的商業(yè)產(chǎn)品這塊肥肉。 但是有另一個可選擇的: APC. (Zend后來推出Zend Optimizer,免費的加速器 譯者) 4、沒有命名空間 設(shè)想某個人制作了一個PHP模塊用來閱讀文件。模塊中一個函數(shù)叫做read。然后另一個人的模塊可以讀取網(wǎng)頁的,同樣包含一個函數(shù)read。然后我們就無法同時使用這兩個模塊了,因為PHP不知道你要用哪個函數(shù)。但是有一個很簡單的解決方法,那就是命名空間。曾經(jīng)有人建議PHP5加入這個特性,但不幸的是他沒有這么做。現(xiàn)在,沒有命名空間,每個函數(shù)都必須加上模塊名作為前綴,來避免名稱沖突。這導(dǎo)致了函數(shù)名恐怖得長,例如xsl_xsltprocessor_transform_to_XML讓代碼難于書寫和理解。 5、不標(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的格式化字符。html教程

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

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 赤水市| 廊坊市| 恩施市| 延安市| 襄垣县| 垫江县| 高青县| 霍城县| 德州市| 永仁县| 曲沃县| 郧西县| 太保市| 永城市| 乡城县| 南木林县| 潜山县| 广东省| 百色市| 武陟县| 容城县| 当雄县| 海林市| 徐州市| 永宁县| 沅江市| 张掖市| 诸城市| 湘潭县| 留坝县| 三亚市| 双牌县| 乐昌市| 延庆县| 乌苏市| 阳信县| 淳化县| 改则县| 屏东县| 黄龙县| 鄯善县|