通过 PHP 与 AJAX 加载页面

Load page via PHP vs AJAX

在我的动态网站中,我首先将 index.html 页面加载为 document structure,然后我通过 ajaxPHP server 发出一些请求并将数据插入到这一页。这比仅通过 PHP (index.php) 加载所有内容更好吗?哪种方法更快?

谢谢!

除非您有充分的理由不这样做,否则加载 index.php 可能更明智。这样,只对服务器进行一次调用,它负责将数据放在一起。另一种方式,您为索引页面调用服务器,然后为数据调用另一个,然后让客户端将数据放在一起。这样做不一定是错误的,但在大多数情况下这可能是错误的选择。

这是我的理解:

index.html

第 1 步:服务器向客户端发送 html 页面。
第 2 步:AJAX 向服务器发出请求。
第 3 步:服务器处理数据。
第四步:服务器响应客户端。
第 5 步:客户端 JavaScript 根据响应更改页面。


index.php

第 1 步:服务器处理 PHP 并发送 html 页面。
第 2 步:??????
第 3 步:利润。

编辑: 这是假设必须以任何一种方式执行相同数量的 PHP 代码。查看 Ravi Dasari's 答案以获得更好的描述。

首先要设置期望的都是最后 HTML 代码,这些代码将进入浏览器进行渲染。因此,这完全取决于您需要获取的数据量以及获取数据以显示此页面所需的时间。

方法 1:加载 index.php 加载时间因您要在此处显示的数据类型而异。

  1. 如果您有一些数据库操作并且每个用户都不同,那么此 php 页面将需要一段时间才能获取所有信息并将其提供给浏览器。
  2. 如果您没有任何用户特定的数据库操作或呈现,那么您可以继续使用 .php 方法,因为您的服务器将生成此 HTML 一次并缓存它。所以你可以获得更好的加载时间。
  3. 如果 PHP->HTML 速度快,这种方法将减少 HTTP 请求的数量,因此加载速度更快。

方法 2:加载 index.html 您当前的加载方法在页面加载方面非常快,但用户仍然需要等待完整内容。但至少他看到了第一个登陆内容并看到了一些微调器并会等待内容。

想象一下,如果它是一个 .php 并且加载用户特定内容很慢,那么用户可能不会等到页面加载完毕,他就不会喜欢它了。

所以这两种方法适用于不同的情况。

此外,您还应该以其他方式优化页面加载时间。您可能想检查从您的页面到服务器的 HTTP 请求总数。您可以在下面的博客中查看更多详细信息。 How to improve you page load time

基本上,在加载页面上使用 ajax 数据方法在不同情况下可能是好是坏,如果我们关心速度,那么我们应该在第一个服务器请求时填充数据,因为如果我们是多次向服务器发送请求会影响带宽。但是,如果我们在页面上使用任何类型的列表,那么我们也可以在具有从服务器获取记录的 ajax 请求的正常结构化 html 页面中使用数据表。这是使用 ajax 方法的另一个好处,如果我们必须为相同的列表或数据创建 REST api,则相同的操作将在这里像 api 一样工作。这就是为什么这些 ajax 呼叫处于趋势 z 中。