PHP比你想象的更好

2021-06-28 20:59:29 字數 2174 閱讀 2620

翻譯自 

fabien potencier july 04, 2012

對php的吐槽隨處可見,包括一些來自smart guys的吐槽。 jeff atwood 的一篇吐槽文,讓我開始思考php好的部分。

其實很多吐槽來自過去人們對php的影響,人們不願承認或沒有留意到,php在語言和社群兩個方面,實際上都以非常快的節奏進化著,並且進化的速度超過了其他任何一種語言或web平台。過去5年,php經歷了一段非凡的歷程。

在討論php社群達成的驚人成就之前,先讓我們看一組有意思的數字:77.9%得**伺服器端程式設計使用php。全世界16.6%的**使用wordpress。世界排名前3的cms(**內容管理系統)均適用php編寫:wordpress-54.3%,joomla-9.2%, drupal 6.8%。

php肯定還是幹了點好事,不是嗎?

php的殺手鐗在於:儘管經歷了近幾年來的巨大變化,php仍然是非技術人員最容易學習的語言——任何人可以使用php更快的建立動態**,更便捷廉價的維護**。php可能不是設計的最好的語言,但可以幫助你把事情乾成。

php-語言

php5.0(2023年發布)帶來了非常堅實的物件模型…這已經是8年前(此文發布於2012...)的事了。最近的php 5.4帶來了你所夢想的現代web語言應有的所有特性:namespaces, closures, traits.

php5.4 還帶來了讓程式設計體驗變得更好的語法糖:使用[]定義陣列;在新建立的物件直接呼叫方法 ((new foo())->bar()); 從任意表示式直接獲取陣列成員 ($foo->bar()[1])。

php曾經犯下的錯誤 register_globals 和 magic_quotes,已經遠去。

php最近的內建式web-server可用於簡化本地測試,能夠在微秒級時間內啟動。

未來的挑戰:如何「公升級」web上流傳的談論php的「舊教程」;如何讓php程式更好的支援websocket。

php-生態系統

語言好重要,生態好更重要,最近幾年,php生態也進化了許多。

gitphp非常快速的擁抱了git,幾乎所有的庫、框架和產品都在使用git,包括php自己。

composer

兩年前,我想要放棄我在symfony1中支援外掛程式而做的ugly-pear-hack。我想要找到乙個管理專案以來的工具來取代他,不像pear這樣的全域性安裝工具。管理依賴不是一件容易的事情,所以我嘗試很多東西:從perl到ruby,從debian到readhat,沒有找到合用的,經驗告訴我只有homegrown的解決方案才會好用。我偶然發現了zypp,她使用sat來管理依賴。感謝nils adermann

和jordi boggiano 的努力,php現在有了最好的依賴管理工具 composer.

是的,php有了比其他語言更好的依賴管理工具。

想要測試symfony (using php 5.4)?

$ composer.phar create-project symfony/framework-standard-edition

$ cd framework-standard-edition

想要測試silex?

$ composer.phar create-project fabpot/silex-skeleton

$ cd silex-skeleton

$ php -s localhost:8888 -t web/

還不知道composer?你應該學習他。上packagist,composer的主**庫:超過1900+個軟體包可用,他們在近3個月被安裝了過百萬次。

協作社群協作是本文的重點;也是我最自豪的地方。我們看到php的專案之間開始有協作,甚至是很大型的專案,大到你認為他們可以忽略其他人的專案。

phpbb,drupal,ez publish,symphony 和需要其他專案(phpdocumentor,phpunit,behat,zikula,propel,doctrine,midgard,…) 都在共享**。是的,他們是競爭對手,但他們都懂得「雜交」是件好事。composer在其中扮演了重要的角色。

未來挑戰:讓更多的專案加入這個潮流。

結語let me say it again: php is probably not the best language out there, and i'm the first one to scream about its quirks, but php is the best web platform... ever.

PHP比你想象的好得多

有很多對於php的抱怨,甚至這些抱怨也出自很多聰明的人。當jeff atwood寫下對於php的另一篇抱怨文章之後,我思考了下php的好的方面。這些抱怨最大的問題是他們出自很多仍在使用舊版本php的人。他們或許是不願意關心或許是不願意承認php不管在語言層面還是在社群層面都在以很快的速度演變。實際上...

PHP比你想象的好得多

有很多對於php 的抱怨,甚至這些抱怨也出自很多聰明的人。當 jeff atwood 寫下對於 php 的另一篇抱怨文章之後,我思考了下 php 的好的方面。這些抱怨最大的問題是他們出自很多仍在使用舊版本 php 的人。他們或許是不願意關心或許是不願意承認 php 不管在語言層面還是在社群層面都在以...

PHP比你想象的好得多

有很多對於php的抱怨,甚至這程式設計客棧些抱怨也出自很多聰明的人。當jeff atwood寫下對於php的另一篇抱怨文章之後,我思考了下php的好的方面。這些抱怨最大的問題是他們出自很多仍在使用舊版本php的人。他們或許是不願意關心或許是不願意承認php不管在語言層面還是在社群層面都在以很快的速度...