Rants about PHP are everywhere, and they even come from smart guys.When Jeff Atwood wrote yet another rant about PHP, it made me think about thegood parts of PHP.
对PHP的抱怨到处都有,他们有时甚至来自于一些聪明的人。当Jeff Atwood写下另类对PHP的抱怨的时候,它让我想起了PHP好的方面。
The biggest problem of these rants is that they come from peoplestuck in the old days of PHP. They either don't care or they don't want toadmit that PHP actually evolves at a very fast pace, both at the language levelbut also at the community level. In fact, it evolves much faster than any otherlanguage or web platform. It has not always been the case, but the last 5 yearshave been an amazing journey for PHP.
这些抱怨的最大问题在于他们的记忆仍然停留在对PHP过去的回忆上。他们既不关心也不想承认,实际上PHP发展的速度非常快,不管是在语言水平上还是在社区建设上都是如此。事实上,它比任何其他的语言或者Web平台的发展都要快。虽然不一直是这样,但过去的5年对于PHP来说是一个辉煌的5年
Before talking about the amazing things the PHP community hasachieved recently, let's have a look at some interesting numbers: PHP is usedby 77.9% of all the websites whose server-side programming language is known.WordPress is used by 16.6% of all the websites in the world. If you have a lookat the top three CMSes, for the websites that use a monitored contentmanagement system: Wordpress is first with 54.3%, Joomla is second with 9.2%,and Drupal is third with 6.8%. Three products written in PHP.
在开始谈论PHP社区最近取得的成就之前,让我们看一些有趣的数据:在已知的服务器端编程语言编写的网站的网站中,77.9%用到了PHP。在全世界所有的网站中,16.6%是使用了WordPress(PHP语言组成的框架)。看一下排名前三的CMSes----使用了监视的内容管理系统的网站:Wordpress以54.3%的使有率排名第一,Joomla以9.2%的使用率排名第二,Drupal以6.8%的使用率排名第三。这三个产品都是用PHP来编写的。
Now, let me tell you a secret, the PHP "tour de force":Despite the changes over the years, PHP is still the easiest language to learnfor non-technical people: it allows anyone to create dynamic websites fasterthan with any other technologies, it allows anyone to host websites cheaply andwithout any hassles. PHP is probably not the best designed language in theworld, but it lets you get things done, and you can't argue with that.
现在,让我告诉你一个秘密,PHP的”绝技”:尽管这些年来一直在变化,但对于非计算机专业的人来说,PHP仍然是最容易学习的一门语言:它允许任何人创建动态的网站,并且创建的速度比任何其他的技术都要快,它允许任何人廉价的创建网站,使用网站而且没有任何麻烦。PHP可能不是世界上最好的设计语言,但它可以让你把事情完成,而你不能反驳这一点。
PHP, the Language (PHP这门语言)
PHP 5.0 (released in 2004) brought us a very solid object model...wait a minute, I'm talking about something released almost 8 years ago. Fastforward now. The latest PHP release, PHP 5.4, comes with all the bells andwhistles you might dream of in a modern web language: yes, PHP supportsnamespaces; yes, PHP supports closures; yes, PHP supports traits.
PHP5.0(在2004年发布)给我们带来一个非常坚实的对象模型。等一下,我一直在讨论一些8年前就有的事情了。时间过得很快,最新发布的PHP版本是PHP5.4,它配备了所有的钟声和口哨声,这可能就是你做梦想的一种现代Web语言。似的,PHp支持命名空间;是的,PHP支持包;是的,PHP支持特性。
It took some time, but PHP 5.4 also comes with some nice syntacticsugar that makes the whole experience better than ever: yes, PHP supports [] todefine arrays; yes, PHP supports calling a method on a newly created object((new Foo())->bar()); yes, PHP supports getting an array item from anyexpression ($foo->bar()[1]).
它需要一些时间,但PHP5.4也带来了一些好的语法,这使得所有的体验比以前更好了。是的,PHP支持[ ]来定义数组;是的,PHP支持在创建一个新的对象的时候调用一个方法((new Foo())->bar());是的,PHP支持从一个表达式中获取一个数组。
PHP has even learned from its mistakes: register_globals andmagic_quotes are definitely gone.
PHP已经吸取了过去的教训:register_globals和magic_quotes这种定义已经被废弃了。
Last, but not the least, PHP even comes with a built-in web serverthat eases local testing... and it starts in a matter of micro-seconds.
最后,但并非最不重要是,PHP甚至还带有一个内置的Web服务器,使能在本地测试。它的启动也就是几微秒的事情。
Next challenges: How do we "upgrade" all the old tutorialstalking about PHP on the web? What is the best way to support the WebSockettechnology in a PHP application?
下一个挑战:我们如何在Web上来升级所有关于PHP的旧教程?在一个PHP应用程序支持WebSocket技术最好的方法是什么?
PHP, the Ecosystem(PHP的生态系统)
Having a good language is great, but having a great ecosystem iseven better. And the PHP ecosystem has evolved a lot in the last few years.
具有良好的语言是伟大的,但有一个很大的生态系统则是更好的。PHP的生态系统在过去的几年里发展了很多。