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的生态系统在过去的几年里发展了很多。

随机推荐

  1. 三大主流软件负载均衡器对比(LVS VS Nginx VS Haproxy)

    LVS:1.抗负载能力强.抗负载能力强.性能高,能达到F5硬件的60%:对内存和cpu资源消耗比较低2.工作在网络4层,通过vrrp协议转发(仅作分发之用),具体的流量由linux内核处理,因此没有流 ...

  2. OpenCV入门之获取图像的旋转角度

      在我们的日常生活中,所碰到的图像往往都有一定的倾斜.那么,如何用OpenCV来获取图像的旋转角度呢?   我们以下面的图片为例,简单介绍如何用OpenCV来获取图像的旋转角度.   可以看到,该图 ...

  3. 第一册:lesson3-4.

    原文: A:My coat and my umbrella please?Here is my ticket. B:Thank you sir.Number five.Here is your umb ...

  4. c#实战开发:以太坊私链搭建(一)

    1.第一步环境搭建 运行环境:window  客户端版本:Go语言geth 下载地址https://ethereum.github.io/go-ethereum/downloads/ 以太坊API中文 ...

  5. 第五讲 smart qq poll包处理 以及 私聊 群聊消息收发

    发送 poll包 public static void Login_PostPoll() { try { string url = "http://d1.web2.qq.com/channe ...

  6. [android] android下文件访问的权限

    /**************2016年5月4日 更新**************************/ 知乎:android编程中写文件(例如a.txt)后存在手机哪个位置啊? 用FileOut ...

  7. Mac下写博客工具ecto相关资料

    下载地址: https://www.macupdate.com/app/mac/8918/ecto 相关注册码: http://www.cnblogs.com/yssgyw/p/3284501.htm ...

  8. vim 的:x和:wq

    vim是Unix/Linux系统最常用的编辑器之一,在保存文件时,我通常选择":wq",因为最开始学习vim的时候,就只记住了几个常用的命令:也没有细究命令的含义. 但是,最近我在 ...

  9. nginx部署与安装

    1.在学习ngnix的时候,免不了需要进行安装,安装其实很简单,一个shell脚本就可以搞定可以参考如下 使用root用户执行nginx-install.sh脚本即可,脚本如下: #!/bin/bas ...

  10. 配置安全域名https申请免费证书并配置nginx运行环境

    补全信息时选项 在这一步需要去查看进度,下载对应文件上传到对应站点根目录里按照要求建的隐藏类型的文件 如下图 讲证书文件按照下面操作 进行配置项配置https 如下 详情下载附件 server { l ...