Php 简明教程
PHP - History
PHP 最初是一个小型开源项目,随着越来越多人发现它的用处,逐渐演变。Rasmus Lerdorf 在 1994 年发布了 PHP 的第一个版本。当时,PHP 的意思是个人主页,因为他用它来维护自己的个人主页。后来,他添加了数据库支持,并称之为“个人主页/Forms 解译器”或 PHP/FI,可以用来构建简单的动态 Web 应用程序。
PHP started out as a small open-source project that evolved gradually as more and more people found out how useful it was. Rasmus Lerdorf released the first version of PHP way back in 1994. At that time, PHP stood for Personal Home Page, as he used it to maintain his personal homepage. Later on, he added database support and called it as "Personal Home Page/Forms Interpreter" or PHP/FI, which could be used to build simple, dynamic web applications.
-
Zeev Suraski and Andi Gutmans rewrote the parser in 1997 and formed the base of PHP 3. The name of the language was also changed to the recursive acronym PHP: Hypertext Preprocessor. They are also the authors of Zend Engine, a compiler and runtime environment for the PHP. Zend Engine powered PHP 4 was released in May 2000.
-
PHP 5 was released in 2004, which included many new features such as OOP support, the PHP Data Objects (PDO), and numerous performance enhancements.
-
PHP 7, is a new major PHP version which was developed in 2015. It included new language features, most notable being, the introduction of return type declarations for functions which complement the existing parameter type declarations, and support for the scalar types (integer, float, string, and boolean) in parameter and return type declarations.
New Features in PHP 8
PHP 8 是最新的主要版本,于 2020 年 11 月发布。一些新功能和值得注意的更改包括:
PHP 8 is the latest major version, released in November 2020. Some of the new features and notable changes include:
Just-in-time (JIT) Compilation
PHP 8 的 JIT 编译器为数学类型操作提供了相比普通 Web 开发用例而言显著的性能提升。JIT 编译器提供了将来将某些代码从 C 迁移至 PHP 的潜力。
PHP 8’s JIT compiler provides substantial performance improvements mathematical-type operations than for common web-development use cases. The JIT compiler provides the future potential to move some code from C to PHP.
PHP 8 – Type Changes and Additions
PHP 8 引入了联合类型、一个新的静态返回类型和一个新的混合类型。PHP 8 还提供了属性(类似于其他编程语言中的“注释”),用于向 PHP 类添加元数据。
PHP 8 introduced union types, a new static return type, and a new mixed type. PHP 8 also provided Attributes, (similar to "annotations" in other programming languages) that help in adding metadata to PHP classes.
此外,对 PHP 标准库做出了多项更改和补充。PHP 8.2.9 是可用的最新稳定版本。
In addition, there have been many changes and additions to the PHP standard library. PHP 8.2.9 is the latest stable version available.
PHP 发布历史中的重要里程碑总结在以下表格中 −
Important milestones in PHP’s release history are summarized in the following table −
Version |
Description |
Version 1.0 (8 June 1995) |
Officially called "Personal Home Page Tools (PHP Tools)". This is the first use of the name "PHP". |
Version 2.0 (1 November 1997) |
Officially called "PHP/FI 2.0". This is the first release that could actually be characterised as PHP, being a standalone language with many features that have endured to the present day. |
Version 3.0 (6 June 1998) |
Development moves from one person to multiple developers. Zeev Suraski and Andi Gutmans rewritten the base for this version. |
Version 4.0 (22 May 2000) |
Added more advanced two-stage parse/execute tag-parsing system called the Zend engine. |
Version 5.0 (13 July 2004) |
Zend Engine II with a new object model. |
Version 5.1 (24 November 2005) |
Performance improvements with the introduction of compiler variables in re-engineered PHP Engine. Added PHP Data Objects (PDO) as a consistent interface for accessing databases. |
Version 6.x Not released |
Abandoned version of PHP that planned to include native Unicode support. |
Version 7.0 (3 December 2015) |
Zend Engine 3 , Uniform variable syntax, Added Closure:call(), ?? (null coalesce) operator, Return type declarations, Scalar type declarations, <⇒ "spaceship" three-way comparison operator, Anonymous classes |
Version 7.3 (6 December 2018) |
Flexible Heredoc and Nowdoc syntax |
Version 8.0 (26 November 2020) |
Just-In-Time (JIT) compilation, Arrays starting with a negative index, TypeError on invalid arithmetic/bitwise operators, Variable syntax tweaks, Attributes, Named arguments, Match expression, Union types, Mixed type, Static return type |