做这样的事情会更好:
//PHP FILE:
<html>
<body>
hi
<?php
//load first 50 comments from mysql
?>
</body>
</html>
或者这个:
//HTML FILE
<html>
<body>
hi
<div id="hello">
</body>
</html>
//JS file:
$(document).load(function() { //or whatever it is if not 'load', I can figure it out
$.ajax( /*php call, receive JSON of the mysql data*/ );
});
我正在寻找速度和空间效率。哪个更好 - 有一个PHP文件发送整个HTML文件,或者有一个HTML文件以JSON格式发送数据?
提前致谢。
答案 0 :(得分:3)
我认为你的问题对于SO来说过于通用,但这是我的两分钱。
如果您在此页面上唯一要检索评论列表,请务必使用第一个选项。您将减少一个请求,这是您应该保留的时间。
但是,只要您需要对此评论列表进行实时操作,我们就说update
,create
,delete
,您可以轻松地看到这些请求只会让您回复新数据,而不是周围的所有内容以及尚未修改的内容。
每次调用操作时,您都可以选择刷新页面并刷新其内容的一部分。
所以我会这样想:
因此,将两者结合起来,并针对每种情况,选择最适合您需求的那种。
匹配您的示例
我会这样做:
echo
您网页的完整评论列表。
现在显示列表,就像您需要的那样。
但是AJAX调用最适合:
删除通常是一个很好的例子。如果用户删除了评论,您可以立即隐藏它,并随时发送请求。因此,用户实际上会将其视为real-time
,比您可以做的任何事情都快。
P.S。 :在我最近使用AngularJS
的应用程序中,我实际上会对AJAX
请求所有内容。但背后有一个很好的理由:通过这种机制,我可以使用缓存,因为HTML
页面的内容是static
。
静态页面将更快地发送,然后内容将被加载到正确的位置。但这种选择需要进行基准测试
此外,重要的是,如果你走这条路,你必须意识到爬行机器人(如GoogleBot
)将无法加载你的内容。
答案 1 :(得分:0)
让php为你回应。两种方法基本上都有php回显第二步,只是通过ajax。
答案 2 :(得分:0)
不知何故,我认为使用直接的PHP和MySQL比jquery,json,mysql和ajax更快更简单。但我不认为这些天的速度差异会很明显......
最好选择适合您的应用程序和编码风格的系统。
答案 3 :(得分:0)