Web开发:客户端和服务器端的PHP


Web Development: PHP both Client and Server Side?

当PHP嵌入到HTML中时,发生了什么?html 响应对象不是在浏览器中被解释的吗,那么浏览器如何处理 php?它是否提出单独的请求?

PHP是一种服务器端语言,可以嵌入到客户端语言中吗?

以下是发生的情况:

  1. 有人在浏览器中访问您的网站。这会在向您的服务器发出 HTTP 请求时触发
  2. 您的服务器决定如何处理请求。假设您正在使用 Apache:默认情况下,这是在您的DocumentRoot中提供index页面
  3. 假设您的索引页index.php。在服务器上,index.php中的所有 PHP 代码执行一次。执行后,该页面的 HTML 结果将提供给客户端
  4. 一旦提供给客户端,唯一可以修改页面的是 JavaScript。PHP 只在服务器上运行。不会向客户端发送任何 PHP 代码。
  5. 如果您的 JavaScript 想要使用来自服务器的信息动态编辑页面而无需重新加载,它可以对服务器执行 AJAX 请求。这需要 JavaScript 向端点发出网络请求(假设 getNames.php )。 getNames.php在服务器上运行,并将其结果(通常以echo <something>的形式返回给JavaScript,然后JavaScript可以根据接收到的数据编辑页面。

问题?

  1. 浏览器向服务器发出 HTTP 请求
  2. 服务器读取 URL 并将其解析(通常解析为具有相同名称的文件)
  3. 服务器识别(通常通过匹配文件扩展名)文件包含PHP程序
  4. 服务器通过PHP编译器传递程序并执行它
  5. 服务器将程序的输出(通常与一些额外的HTTP响应标头一起)发送到浏览器

PHP 源代码永远不会发送到浏览器。只发出一个请求(除非 PHP 的输出是,例如,告诉浏览器加载(例如)图像的 HTML 文档)。