1

请先看下面的例子,哪个更好?

您能否比较一些方面,例如性能、编程、设计、负载、用户体验、维护、安全性或我没有预料到的任何其他方面。

这些方面可以帮助我决定哪个更好吗?

<script>
$(document).ready
(
    function()
    {
        var message={..something..};
        $.ajax
        (
            {
                url:'get_content.php',
                data:message,
                type:'post',
                cache:false,
                success:function(data)
                        {
                            foreach(data.array)
                            {
                                $('#content').append($('<tr><td>'+data.array[key]+'</td></tr>'));
                            }
                        },
                error:function(){alert('error');}
            }
        );
    }
);
</script>
<table id="content">
</table>

<table id="content">
<?php
query sql;
while(row=fetch result)
{
    echo '<tr><td>'+row[field]+'</td></tr>';
}
?>
</table>
4

2 回答 2

5

您正在将苹果与橙子进行比较。

  • PHP --服务器端语言
  • AJAX——客户端语言 (JavaScript)

AJAX 是关于您唯一(合理)的方法,可以代表客户端从服务器获取数据,而无需刷新整个页面。但是,您可以在服务器端使用各种不同的语言来呈现 AJAX 继续运行所需的数据。(ASP,PHP,...)。

这取决于您以及您网站的其余部分的开发内容。如果您想要一种绝对(无故障)的方法来生成内容,那么 PHP 转储是最好的方法。它保证是可见的并且不会中断,具体取决于客户端支持(也许他们有 NoScript 插件?)。

但是,如果有很多数据,有时最好将负载分散到多个调用中,以便客户端至少有一个半完整的页面部分可见,并且数据稍后出现。(这通常是 Facebook 进行的方式——他们在最初的几分之一秒内为您提供总体布局,然后在框架完成后提供其余内容)。

不过要注意的一件事是,这不是一个非此即彼的决定。您可以将 AJAX 与 PHP 后备一起使用,您只需准备好代码来测试客户端并将该信息传递回服务器以做出明智的决定。

于 2012-04-05T12:14:55.067 回答
3

就个人而言,我会选择 PHP。它花费的时间如此之短,以至于用户永远不会注意到延迟,而使用 AJAX 则需要发出一个完整的单独请求。

AJAX 非常适合在页面加载后获取数据。我认为它不应该用于获取本来就应该存在的数据。

于 2012-04-05T12:14:15.187 回答