一个PHP请求的执行过程
PHP 请求的执行过程是指用户提出请求,Web 服务器(包括 HTTP 服务器)接收并解析请求,然后调用相应的应用程序处理请求,将结果返回给用户的整个过程。这是一个简单而完整的 PHP 请求执行过程。
1. 用户发起 PHP 请求:首先,用户通过浏览器向 Web 服务器(比如 Apache)发出一个网页请求,实际的请求事件是由用户发送的某种形式的数据,比如:点击链接、提交请求表单按钮和文件上传等事件发起。
2. Web 服务器接收和解析请求:处于监听状态的Web服务器,会得到用户发送的请求,这些请求包括一个URL、参数,以及客户端的session 等数据。Web 服务器,会调用自身的特定程序来解析请求,这些程序是负责检查用户请求的信息,并且从URL中解析出请求的网址,然后确定用户请求的是静态网站页面还是一个动态Web应用程序(PHP)。
3. 调用 Web 服务器API:Web 服务器会根据确定的请求,使用其提供的API调用相应的程序处理请求,当Web服务器收到用户请求请求一个PHP 程序时,它会调用 PHP 的API来执行它,但首先, Apache 会使用文件扩展名(比如 .php)来确定要调用的是什么处理器。
4. 调用 PHP 处理器:当 Web 服务器确定用户请求的是PHP文件时,它将以“通过 PHP 处理器处理”为主线,连接 PHP 处理器,并将用户请求的 PHP 文件发送给 PHP 处理器处理。
5. 脚本被编译为机器语言: PHP 处理器会先将 PHP 文件解析成所谓的中间表示(Intermediate Representation,IR),然后将其编译成机器语言(Machine Language),并在内存中执行它以计算出期望的结果。
6. 处理结束:当 PHP 处理器完成处理用户的 PHP 脚本数据,机器语言的总结成输出格式,把结果发送给 Web 服务器,PHP 处理器便结束了它的服务。
7. 返回结果: Web 服务器接收到结果后,会调用自己的API,将处理结果发送回给浏览器,用户最后便能看到结果了。
总结而言,一个 PHP 请求的执行流程基本上可以分为以下 7 步:用户发起请求、Web 服务器接收并解析请求、调用 Web 服务器 API、调用 PHP 处理器接收请求、编译为机器语言、PHP 处理结束、将结果发送回浏览器。每一步都有它自己的功能,同时就是整个请求执行的最基本的步骤。