什么是PHP——如何编写你的第一个PHP程序

185 阅读7分钟

在这篇文章中,你将了解什么是PHP编程语言,以及如何用它来编写你的第一个程序。

PHP的历史

PHP是为Web开发生成的最常用和最流行的脚本语言。你可以把它嵌入到HTML文档中。

PHP是用高级的C编程语言编写的。第一代 PHP 是由 Rasmus Lerdorf 在 1994 年创建的 PHP/FI。他写它是为了跟踪他的简历的访问者。

使他能够轻松地用 PHP 创建第一个主页的是将 PHP 代码嵌入到 HTML 标记中的能力。

第二代产品在 1995 年作为 PHP/FI 第二版发布,指的是个人主页工具。这时的 PHP 依赖于一个小型的解析器引擎来翻译和理解一些特殊的指令和一些在 PHP 个人主页上使用的实用程序。

1996年,PHP正式诞生并得到了更广泛的应用。一开始,它被用在全世界超过15000个网络应用程序上。这个数字在第二年增加到50,000。

目前,PHP完全依赖于一个叫做Zend引擎的高级解释器。要了解更多关于什么是PHP以及如何写一个高级的PHP程序,你应该阅读更多关于它的语法。

正如我之前提到的,PHP依赖于Zend Engine解释器。但问题是,什么是解释器?它又是如何工作的?

在下一节中,我将从头解释一切--从源代码到PHP服务器的响应。但在此之前,你必须知道解释器和编译器的区别。

让我们直接进入。

解释器和编译器之间的区别是什么?

解释器是一个程序,它将源代码逐行翻译成二进制比特(0和1)--机器语言。在这个过程中,开发人员可以编辑源代码。

解释器分析代码的时间并不长--比如删除源代码中的注释、空白处等等。但是整体的执行时间要慢一些。

另一方面,编译器是一个程序,它将已经用高级编程语言编写的完整源代码,翻译成二进制或机器语言。

在这个过程中,你不能编辑源代码,因为它是作为一个整体进入到编译器中的。编译器分析代码的速度很慢,但翻译的速度非常快:

WhatsApp-Image-2022-07-27-at-2.34.06-PM

让我们更深入地了解一下 PHP 解释器,看看它是如何工作的。

PHP 解释器是如何工作的?

正如我之前提到的,PHP 解释器被称为 Zend Engine,它有四个阶段来解释 PHP 源代码--在本节中,我们将更深入地探讨每个阶段。

词法分析

PHP 解释器从服务器上获取源代码并开始第一个阶段,称为词法分析(或标记化)。在这个过程中,解释器会删除所有的空白和注释语法,搜索源代码中的任何错误,然后生成一个标记序列。

词法分析在这个阶段不会引起任何错误,因为它只负责产生一个标记序列。但是,如果它在源代码中发现任何错误,它会抛出一个致命的解析错误来直接停止这个阶段。

解析器

在接下来的步骤中,解析器开始工作。在这个阶段,解析器接收标记序列,并设置一些指令来创建Zend Engine VM(虚拟机)--它类似于汇编语言--来操作已经在上一阶段创建的标记序列。

编译

这个阶段已经在解析器阶段了,在这里,解析器通过生成AST(抽象语法树)开始编译,然后把它传递给代码生成器。

编译的输出是一个已经依赖于Zend Engine VM的中间代码。这就是所谓的操作代码(OPCodes)。操作码包含一些指令,以执行所有需要执行流程控制的操作。

执行

这是最后一个阶段,在这里,执行器接收前一个阶段已经生成的中间代码。它可以从指令数组中读取这些OPC代码,然后逐一执行。

总的来说,Zend引擎有两个分离的函数,编译和执行,它们是zend_compile和zend_execute。

在下一节中,你将写出你的第一个PHP程序!但是在这之前,你必须安装一个Wamp(用于Windows)或XAMPP(用于Linux/MacOS)服务器,这取决于你使用的操作系统。

如何安装XAMPP

在本节中,我将解释XAMPP服务器以及如何在你的本地机器上运行PHP服务器。

首先,XAMPP是一个用于创建PHP web服务器的免费软件。但是XAMPP是什么意思?

  1. "X "指的是操作系统,如Windows、Linux或macOS。因此,这意味着我们可以将XAMPP服务器安装在我们在这一行中提到的操作系统之一。
  2. "A "指的是Apache,那是PHP网络服务器软件。
  3. "M "指的是MariaDB - MySQL,数据库管理系统。
  4. "P "指的是PHP (个人主页)--服务器端的脚本语言,帮助我们创建动态网页。
  5. "P "是指Perl ,它用于网页开发、网络编程或系统管理。

因此,XAMPP指的是你进行网络应用程序开发所需的所有软件包。

要在你的本地机器上安装XAMPP服务器,请浏览XAMPP官方网页,根据你的操作系统下载安装程序。

一旦你下载了它,就按照你在安装程序中读到的说明来安装该程序。

最后的结果应该如下图所示:

image-2

XAMPP控制面板

你只需点击Apache模块旁边的 "启动 "按钮就可以运行PHP服务器。

让我们探讨一下XAMPP服务器应用程序中的重要文件夹:

image-3

XAMPP的重要文件夹

上图向你展示了所有重要的文件夹,但我们只需要关注**"htdocs**"文件夹。这个文件夹是包含所有PHP项目的公共目录。

所以你要把任何新的PHP项目放在**"htdocs**"文件夹里。而要在Web浏览器上打开结果,你只需要导航到**"localhost/your_project_folder_name**"。

让我们写一个PHP程序来说明这一点。

如何编写你的第一个PHP程序

为了帮助你写第一个PHP程序,我们只是要打印一条小信息--"Hello World"。

首先,确保你的PHP服务器在本地机器上运行--我在本地机器上使用的是XAMPP服务器。

第二,在你的服务器应用程序目录下创建一个文件夹,并命名为codedtag

下面的图片向你展示了我在XAMPP服务器应用程序中的公共文件夹是**(htdocs**)在Windows上:

image-273

XAMPP服务器的公共文件夹

对于下一步,创建一个以PHP扩展名结尾的索引页。在 "codedtag "文件夹内,复制粘贴以下PHP代码:

<?php 
   echo "Hello World";
?>

要运行该脚本,打开浏览器并导航到localhost/codedtag。你会看到如下图所示的打印信息:

image-274

PHP打印信息

就这样了!你已经打印了你的第一个PHP程序。

总结

在这篇文章中,我们讨论了什么是 PHP,并用几句话概括了它的历史。我们还学习了编译器和解释器之间的区别。

另外,我们还讨论了 PHP 解释器工作的具体步骤。总结一下,让我们从头看一下PHP的Zend引擎:

  1. 第一步是词法分析。在这个阶段,解释器从源代码中删除所有空白和注释,并生成一个标记序列。
  2. 下一步被称为解析器,在这里,解析器设置指令来创建Zend Engine虚拟机来操作标记序列。
  3. 编译阶段创建AST(抽象语法树)并将其传递给代码生成器,最后的编译输出是OPCodes。
  4. 下面的步骤是针对执行器的,在这个阶段,执行器正在读取和执行数组中的指令。

请继续关注我的下一篇文章。