我很新的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