2014-01-19 43 views
0

我是新來的PHP和Facebook應用程序框架。這是我的問題:我有一個PHP應用程序,它從Facebook用戶和他的每個朋友那裏獲取一些個人資料信息。所有這些信息都是json格式(通過url「graph.facebook.com +某些字段+訪問令牌」檢索)。所以我有一定數量的URL(json文件)等於用戶朋友的數量,我必須將這些json文件上傳到我的服務器(一個免費的)。我用來實現這一目標的僞代碼:必要的字段和訪問令牌上傳圖表api結果

  • 構建graph.facebook.com URL(https://graph.facebook.com/USER-ID?fields=field1,...,fieldN&access_token=ACCESS-TOKEN
  • 然後,每個網址,我使用:file_put_contents($filename, file_get_contents($url))

最後一點是有問題的。由於令牌具有一個小時的有效期限,我沒有太多時間來完成所有操作,並且使用file_put_contents($filename, file_get_contents($url))這非常耗時。

例如:對於約400位朋友的用戶,應用程序需要40分鐘(或多或少)。

的字段是這些: first_name,last_name,id,education,birthday,political,gender,hometown,relationshi‌p_status,religion,location,locations,work,interested_in,inspirational_people,spor‌​ts,likes

你有任何想法來解決這個問題?

謝謝大家!

+0

你在抓什麼領域?也許這些都可以用一個或兩個Graph API調用來檢索。如果不是使用Graph,那麼我確信使用FQL可以返回一個或兩個FQL查詢的結果。讓我們知道你需要什麼數據,我們可以提供一種方法。 – madebydavid

+0

我編輯了必要字段的帖子。 @madebydavid你認爲使用$ facebook-> api(..)是一個更快的方法嗎?爲什麼? – enneppi

回答

0

我已經試過這種方式,它是速度快:而不是使用上面的帖子描述的操作,我已經使用:

  • Facebook的API:$facebook->api(with the necessary fields)
  • 與json_encode和file_put_contents我轉換
  • 然後由apui返回並將其放在服務器上的數組

問題是:爲什麼這種方法更快?