2009-04-10 30 views
8

我已經看了很多其他人的源代碼和其他開源PHP軟件,但在我看來,幾乎沒有人真正使用PEAR。PEAR在現實世界中有多常見?

PEAR在現實世界中的使用情況有多常見?

我在想,也許目前對框架的感覺可能會影響它的流行度。

回答

10

PHP程序員文化似乎有一個「未發明在這裏」綜合症,其中每個人似乎都想自己重新發明輪猖獗感染。

這並不是說這適用於全部 PHP程序員,但他們這樣做顯然太過正常。

大部分時間我認爲是由於缺乏教育,加上託管提供商提供體面的PHP服務的困難。

這使得獲得一個可行的PEAR安裝變得更加困難,而且由於PHP的設計結構不利於模塊化設計而導致其惡化。

(這可能會增加命名空間,但尚未見到)。

我在野外看到的絕大多數PHP代碼仍然是用HTML插入的經典業餘代碼,而PHP用戶不可避免地註冊的大多數廉價託管並不能爲您提供shell訪問權限。

+0

是。但不知何故,它仍然主要工作。 (至少蹩腳的VB代碼大部分是隱形的。) – dkretz 2009-04-10 01:06:52

+0

感染是可悲的自我維持,每個人都重新發明輪子,但不分享它,所以別人不必。 – 2009-04-10 01:07:22

0

梨庫是有點東西,只是坐在那裏,堵塞,很少榮耀。如果您正在尋找可以實現的功能,並且您正在使用的框架中沒有更具體的目標 - 請使用它。

我一直在做一個約會網站過去兩年 - 至少有65個我曾經使用過的梨源文件,並且今天仍然在那裏生活。有些像傳呼機或html_Quickform一樣會在更新後被新代碼取代,但對於其他人則沒有必要。

3

林我看來PEAR是一個很好的項目,但缺乏誰想要的工作和保持工作就可以了,大多數的包有不一致的編碼習慣(我不是指編碼風格),並有很多TODO在人整個東西。

我發現它有時用於編碼我還不知道的東西,比如自定義的國家驗證函數等等,否則我最好用任何可用的框架(比如CodeIgnite或Zend Framework)。

0

梨不常見,也不受歡迎。

0

我試過多次使用PEAR,但它缺少umpphh提交。

我喜歡Zend Framework採用'鬆散'類型的方法,只使用你想要的。

6

在我的(有限)的經驗,這是潛在的有趣每PEAR項目針對它有要點:

  • 代碼在更多觀衆的針對性。全世界都有黑客處理舊/不支持的PHP版本。如果不能在舊版本中模擬新的有用功能,這意味着最終落後於核心語言開發。
  • 任何給定的項目往往會增長,直到它通過一個簡單的include解決了每個人的問題。當你的PHP解釋器必須處理每一頁命中的所有源代碼時(因爲作者可能沒有將它設計成對操作碼緩存友好的),處理成千上萬的未使用代碼行會產生可測量的開銷。
  • 風格總是不一致。它從來沒有像我在學習其他語言的泛化API一樣。

我曾經在工作中使用PEAR::DB。我們發現,我們的大部分腳本花在PEAR代碼中而不是我們自己的代碼中。使用pgsql_*函數替換該函數可顯着減少執行時間並提高運行時安全性,因爲使用real準備好的語句。 PEAR::DB使用它自己的(當時不正確的)預編譯語句邏輯,因爲本地pgsql_函數太新,無法在任何地方使用。總的來說,在許多情況下,我覺得PEAR很適合作爲「初級庫」。它很可能是更高質量的代碼,比任何人在短時間內產生的代碼都要高。但是我肯定不會在一個流行的面向公衆的網站上使用它(至少,不是沒有很多手工調整...維護我自己的分支)。

0

梨不常見,也不流行 - 但它好,我會推薦給任何人。

(我與湯姆同意,它不覺得自己像一個單一的,統一的API,但隨後,這是PHP ......一個不希望看到它得到了車站上方作爲解釋破解語言現在會一個?!)