编程语言之PHP
PHP(全称:PHP:Hypertext Preprocessor,即“PHP:超文本预处理器”)是一种开源的通用计算机脚本语言,尤其适用于网络开发并可嵌入HTML中使用。PHP的语法借鉴吸收了C语言、Java和Perl等流行计算机语言的特点,易于一般程序员学习。PHP的主要目标是允许网络开发人员快速编写动态页面,但PHP也被用于其他很多领域。
PHP原本的简称为Personal Home Page,是拉斯姆斯·勒多夫为了要维护个人网页,而用c语言开发的一些CGI工具程序集,来取代原先使用的Perl程序。最初这些工具程序用来显示拉斯姆斯·勒多夫的个人履历,以及统计网页流量。他将这些程序和一些窗体解释器集成起来,称为PHP/FI。PHP/FI可以和数据库连接,产生简单的动态网页程序。拉斯姆斯·勒多夫在1995年6月8日将PHP/FI公开发布,希望可以通过社区来加速程序开发与查找错误。这个发布的版本命名为PHP 2,已经有今日PHP的一些雏型,像是类似Perl的变量命名方式、窗体处理功能、以及嵌入到HTML中运行的能力。程序语法上也类似Perl,有较多的限制,不过更简单、更有弹性。
PHP最初是由勒多夫在1995年开始开发的。而现在PHP的标准由PHP Group和开放源代码社区维护。PHP以PHP License作为许可协议,不过因为这个协议限制了PHP名称的使用,所以和开放源代码许可协议GPL不兼容。
PHP的应用范围相当广泛,尤其是在网页程序的开发上。一般来说PHP大多运行在网页服务器上,通过运行PHP代码来产生使用者浏览的网页。PHP可以在多数的服务器和操作系统上运行,而且使用PHP完全是免费的。
类型
PHP主要有以下四种标量类型:
整数型(integer)
浮点数型(float)
布尔型(boolean)
字符串(string)
两种复合类型:
数组(array)
对象(object)
两种特殊类型
NULL
资源(resource)
整数(计算机科学)整数型(integer)
框架
PHP官方的框架为Zend framework,2005年开始开发至今已经步入成熟期,尽管对于PHP框架的方向业界还有争议,但在实际生产中框架的使用已非常普遍。使用PHP框架可以更快更简单的部署项目并提高开发效率,但学习使用这些框架需要付出额外的学习成本。
库
内置多样化的函数是PHP主要的特点之一,这些开放代码的函数提供了各种不同的功能,例如文件处理、FTP、字符串处理、等等。这些函数的使用方法和C语言相近(例如printf),这也是PHP广为流行的原因之一。除了内置的函数之外,PHP也提供了很多扩展库(extension),像是各种数据库连接函数、数据压缩函数、图形处理等等。有些延伸库需要从PECL(PHP Extension Community Library)取得。
模板引擎
模板引擎让PHP应用程序可以做逻辑和使用界面上的分离,让程序开发更容易进行,目前比较受欢迎的模板引擎是PHP官方开发的Smarty。不过模板引擎存在性能方面的争议,因为PHP本身就是一个模板引擎,使用模板引擎反而变成“重新发明了轮子”(reinventing the wheel)。模板引擎最主要的好处就是让不懂PHP代码的人也可以参与使用界面的开发,因为模板引擎的语言远比PHP简单。例如非常经典的MVC结构(模型-视图-控制)即是对模板引擎的最好应用,让PHP编程人员可以和HTML前端程序员分工合作。
三十周年记(2025年7月)
诞生于 1995 年的PHP 最初由 Rasmus Lerdorf 开发,名为 “Personal Home Page Tools”,主要用于管理他的个人主页。它最初是一组用 C 语言编写的 CGI 程序,语法与今天的 PHP 大不相同。他将这些程序和一些窗体解释器集成起来,称为 PHP/FI。
1995 年 6 月 8 日,PHP/FI 正式公开发布。
1997 年 11 月 1 日,PHP/FI 2(PHP 2.0)发布,这是 PHP 首次作为一个独立的编程语言出现,包含了许多至今仍在使用的功能。
1998 年 6 月 6 日,PHP 3 发布,这是 PHP 的一个重要转折点,它提供了更强大的功能和更广泛的数据库集成。
2000 年 5 月 22 日,PHP 4 发布,引入了 Zend Engine,带来了显著的性能提升和会话处理等高级功能。
2004 年 7 月 1 日,PHP 5 发布,引入了 Zend Engine 2,大幅提升了对面向对象编程的支持,同时引入了 PHP Data Objects(PDO)扩展,用于统一数据库访问。
2005 年,Symfony 框架发布,为 PHP 开发提供了结构化和标准化的支持。
2015 年 12 月,PHP 7 发布,带来了显著的性能提升和内存效率改进,引入了 Zend Engine 3。
2020 年 11 月,PHP 8 发布,引入了 JIT 编译器、联合类型、属性等新功能,进一步提升了性能和开发效率。
2021 年 11 月,PHP 基金会成立,旨在确保 PHP 的长期发展和稳定性。
2025 年,PHP 迎来了 30 周年纪念。目前 PHP 已经发展到 8.4 版本,继续推动 Web 开发的创新。
FrankenPHP 加入 PHP 基金会
2025 年 6 月 8 日,FrankenPHP 正式加入 PHP 基金会,这是一个旨在为现代 Web 重新发明 PHP 的项目。
技术演进与对互联网业界的影响
技术演进
它从最初的简单 CGI 脚本,逐步发展为一个功能强大、性能卓越的现代编程语言。它不断引入面向对象编程、类型安全、JIT 编译等先进技术,以适应现代 Web 开发的需求。
对互联网业界的影响
广泛的应用:PHP 是全球超过 75% 网站的首选开发语言,包括 Wikipedia、WordPress 和 Drupal 等知名平台。
推动 Web 开发的普及:PHP 的易用性和灵活性使其成为初学者和专业开发者的理想选择,极大地推动了 Web 开发的普及。
生态系统的发展:PHP 的生态系统不断壮大,包括 Laravel、Symfony 等框架,这些工具不仅扩展了 PHP 的功能,还培养了开发者社区。
安全性和性能的提升:近年来,PHP 在安全性和性能方面取得了显著进步,使其能够支持企业级应用。
编程语言中的卡罗拉
在软件世界的浮华浪潮中,少有技术能像 PHP 那样,历经数十年争议却依旧坚挺存在。2025年8月,技术博客《De Programmatica Ipsum》的作者 Adrian Kosmaczewski 以一篇题为《The Toyota Corolla Of Programming》的文章,再次为 PHP 正名。他指出,尽管 PHP 在程序员社区常被当作 “过时、糟糕” 的代表,但它恰恰如同汽车界的丰田卡罗拉 —— 便宜、实用、遍地可修、不出彩却始终可靠。
他说道:PHP 是经济实惠的 Web 开发通用语言;或者换句话说,它是编程语言中的丰田卡罗拉:平淡无奇、可靠、易于使用且价格实惠。它可让人几乎可以在世界任何地方找到一种经济实惠的 Web 托管方案,PHP 提供了 LAMP 的 “圣四位一体”:Linux、Apache、MySQL 和 PHP;一个操作系统、一个 Web 服务器、一个数据库服务器和一种脚本语言,以一个经济实惠的套餐形式,让大家能够走得更远。
PHP 与 JavaScript 一样诞生于 1995 年,经历早期的野蛮生长与社区化演进,如今已成为互联网基建的中流砥柱。而今的 PHP,早已不是当年那个 “混乱不堪” 的语言。从 OOP 支持到严格类型系统,从现代语法糖到丰富的标准库,它正悄然完成一场 “卡罗拉式” 的更新换代:不是为了追赶潮流炫技,而是为了持续提供稳定、可维护、无需额外学习成本的生产力。而 Kévin Dunglas 及其团队推出的 FrankenPHP,更是将这辆 “老车” 换上了涡轮引擎。这个基于 Go 实现的 PHP 运行时,为容器化和高性能部署量身打造,甚至已获得 PHP Foundation 的认可,成为推动语言演进的重要力量。在这个充满短命 JavaScript 框架与炫技后端方案的时代,PHP 的生存逻辑显得朴素却深刻:不是要惊艳所有人,而是要为大多数人兢兢业业地完成任务。就像卡罗拉,或许你永远不会在车展上为它驻足,但它却是全球数以百万计家庭、司机和公司每天赖以出行的伙伴。
在中国的发展历程(2000~2025)
在全球编程语言的发展史中,PHP 一直是一门“务实派”语言。它没有复杂的理论体系,却凭借简单、灵活的特点,在中国互联网早期迅速普及,并深刻影响了一代网站的诞生方式。
1、萌芽阶段:互联网起步与 PHP 的进入(2000 年前后)
PHP 由 Rasmus Lerdorf 于 1994 年开发,最初只是一个简单的工具集合。随着 PHP 3 和 PHP 4 的发布,它逐渐具备完整的 Web 开发能力。大约在 2000 年前后,中国互联网刚刚起步。当时常见的技术选择包括:
ASP(依赖 Windows + IIS)
JSP(偏企业级,部署复杂)
PHP(开源、跨平台)
PHP 在这一阶段迅速被接受,核心原因可以总结为三点:
1.成本低:无需授权费用,适合资金有限的创业者
2.部署简单:一套 Apache HTTP Server + MySQL + PHP 的组合即可运行
3.学习门槛低:语法接近 C,但使用方式更灵活
这一时期,“会上传文件就能建站”成为现实,PHP 成为个人站长的首选工具。
2、爆发阶段:草根站长与开源程序的繁荣(2005–2012)
这一阶段是 PHP 在中国的巅峰时期。大量个人站长开始搭建网站,论坛、博客、下载站、资讯站遍地开花。其的生态也在这一时期迅速成熟,出现了一批极具影响力的开源程序。
1. 论坛系统:社区文化的基石
Discuz!
几乎成为“论坛”的代名词,从校园 BBS 到地方社区广泛使用。
PHPWind
与 Discuz! 长期竞争,后被阿里巴巴收购;这些论坛系统不仅提供发帖功能,还内置用户体系、积分系统、插件机制,形成了完整的社区生态。
2. CMS 系统:门户网站的生产线
DedeCMS:上手极快,大量资讯站、采集站基于它搭建。
EmpireCMS:更强调灵活性与数据结构控制。
CMS 的出现,让“做网站”从开发行为变成了配置行为。
3. 博客系统:内容创作的载体
WordPress:国外项目,但在中国站长中极受欢迎。
个人博客的流行,推动了技术分享、写作文化的发展,也间接促进了程序员社区的成长。
3、商业化阶段:互联网公司的 PHP 实践
随着用户规模扩大,PHP 不再只是“站长工具”,而是进入商业公司体系。一些典型案例:
腾讯:早期 QQ 空间、部分 Web 业务使用 PHP
新浪:内容类产品中大量采用 PHP
百度:在部分内容平台和工具中使用 PHP
不过,大型公司通常会对 PHP 做深度改造,例如:
自研框架、引入缓存(Memcached、Redis)、使用分布式数据库。
PHP 在这一阶段完成了从“小工具”到“工程语言”的转变。
4、框架时代:工程化与规范化(2010 年后)
随着项目复杂度提升,原始 PHP 写法逐渐暴露问题:代码难以维护、安全性不足、复用性差
于是,PHP 框架开始流行:
ThinkPHP:国产代表,文档完善,适合国内开发者
Laravel:提供优雅语法与完整生态
Symfony:企业级框架,强调组件化
这一阶段的变化可以总结为:
从“脚本”走向“架构”;从“能用”走向“好维护”。
5、转折阶段:移动互联网带来的冲击(2013 年后)
移动互联网兴起后,技术格局发生明显变化:
前端:从简单页面发展为复杂应用(如 SPA)
后端:Java、Go、Node.js、Python 崛起
架构:微服务、容器化逐渐普及
PHP 面临几个挑战:
1.并发能力相对较弱(传统模型下)
2.不适合长连接服务
3.生态在新领域(如 AI、大数据)较弱
因此在大型互联网公司中,PHP 的使用比例开始下降。
6、调整与进化:PHP 并没有消失
尽管受到冲击,PHP 并没有退出历史舞台,而是找到了新的定位。
1. 技术层面的进化
PHP 7 / PHP 8 性能大幅提升、类型系统增强、更现代化的语法(如匿名函数,属性类型)
2. 使用场景的变化
当前 PHP 在中国主要集中在:
中小型企业网站、外包项目、内容管理系统、跨境电商独立站(大量基于 WordPress)
3. 为什么还在用?
原因其实很现实:
成熟稳定、开发成本低、生态完善(尤其是 Web 领域)、人才储备充足
7、小结:一门“时代语言”的轨迹
PHP 在中国的发展,可以看作中国互联网发展的一个缩影:
1.早期:降低门槛,让更多人参与互联网建设
2.中期:支撑论坛、门户、博客等核心形态
3.后期:在技术浪潮中调整定位
最新版本:7.0
还有其他一些比较小的改进,比如显著减少内存使用,添加返回类型声明等等功能。PHP 7包含了一些重大安全改进,如除去PHP安全模式,添加魔术引号,有一些新的保留关键字等等。PHP 7.0 包含最新版本的 Zend Engine,包括以下特性:
提升性能:PHP 7 速度是 PHP 5.6 的两倍
显著降低内存使用
抽象语法树
支持 64 位
许多重大错误可以进行异常处理
移除了旧的和不支持的 SAPIs 和扩展
安全的随机数生成器
null 合并操作符
结合比较运算符 (<=>)
标量类型声明
匿名类
GMP 对象支持操作符重载
允许上传超过 2G 的文件
官方主页:http://php.net/
该文章最后由 阿炯 于 2026-04-12 07:53:18 更新,目前是第 2 版。