我很新的PHP会话,所以我不知道他们是如何在行业最佳实践等存储整个Facebook的图形对象插入到PHP会话
我使用的file_get_contents来获取Facebook的使用为我的页面创建流数据,然后使用php解析JSON并显示在页面上。然而我注意到我的网站存在严重的延迟,这显然是因为每次页面加载时,它都会提取Facebook流,然后解析并返回html。
所以我想尽办法加快这一进程,所以我的页面加载时间不吃亏(因为我的facebook流将在我的网站的每一页上),我想出了这个简单的代码:
<div id="FacebookFeed">
<h1>Facebook</h1>
<?
if (isset($_SESSION["fbFeed"])){
$fbFeed = $_SESSION["fbFeed"];
}
else {
$fbFeedURL = "https://graph.facebook.com/***/feed?access_token=***&limit=1";
$fbFeedString = file_get_contents($fbFeedURL);
$fbFeed = json_decode($fbFeedString);
unset($fbFeedString);
$_SESSION["fbFeed"] = $fbFeed;
}
if ($fbFeed != null){
?>
<p><? var_dump($fbFeed);?></p>
<? } ?>
</div>
所以基本上如果设置了“fbFeed”会话,我使用它(希望它会比在每个页面上获取数据更快),如果未设置,我将它设置。 SIMPLE'S!
但在会话中保存所有数据是个好主意吗?是它们通常用于什么目的,还是只有少量的数据通过页面传递?
还有任何优化技巧会有帮助!
谢谢,亚历克斯
你是怎么得到这个到底是谁? – 2011-12-22 13:18:56
我拉我需要的信息例如名称,发布信息,如果它存在,也可能是链接,并将它存储在会话中!在页面加载时,如果会话存在,请使用会话数据。如果不是,则获取数据。这意味着您第一次加载页面大约需要3秒。所有后续的时间。它的速度相当快;)我会去选择数据库选项,但是我只提取了一篇文章 – 2011-12-22 15:25:11