0

나는 프로젝트의이 부분에서 graph.facebook.com에서 얻은 데이터를 저장하고 싶습니다. 이제는 내 프로젝트의 샘플 출력을 페이스 북 그래프에서 가져옵니다. api. :어떻게 내가 페이 스북 그래프 API에서 추출 된 데이터를 사용할 수 있습니다

Facebook\GraphObject Object 
(
    [backingData:protected] => Array 
     (
      [data] => Array 
       (
        [0] => stdClass Object 
         (
          [message] => Automated XML Site Map Generator 
http://pastebin.com/xjJe38dp 
          [id] => 103114753133019_371405176303974 
          [updated_time] => 2013-04-26T05:36:35+0000 
         ) 

        [1] => stdClass Object 
         (
          [message] => Simple but powerful DB class 
http://pastebin.com/1qgxUrwX 
          [id] => 103114753133019_371404696304022 
          [updated_time] => 2013-04-26T05:34:23+0000 
         ) 

        [2] => stdClass Object 
         (
          [message] => Convert Existing DB to Unicode 
http://pastebin.com/pHu08cPs 
          [id] => 103114753133019_371404609637364 
          [updated_time] => 2013-04-26T05:33:50+0000 
         ) 

       ) 

      [paging] => stdClass Object 
       (
        [previous] => https://graph.facebook.com/v2.2/103114753133019/feed?fields=message&since=1366954595&access_token=425591634259397|AQumfoxQyU3wAyt3sM37sYM9sp8&limit=25&__paging_token=enc_AexpCrJr7NTOG02uEaXs6pqjd11UjEohZJLjXZrWeYLOsE9hPX7WQTLemXIGMpzdFXEDdDUQj3qdwOqEbmlAfX4TREbZ-3GAfkKiUZ44kHGYLw&__previous=1 
        [next] => https://graph.facebook.com/v2.2/103114753133019/feed?fields=message&access_token=425591634259397|AQumfoxQyU3wAyt3sM37sYM9sp8&limit=25&until=1366954430&__paging_token=enc_AeyPm9mOsK3T9J0JNkIyQQqxfS7hLDe5GCs-IRLQWPOOzma8v9Rzvw8awxxE0GMQhx-rfs99X7TpUGw5f7HNgPnTKh11WbGC5Yj7GyW7s2VqoA 
       ) 

     ) 

) 

다음을 실행하여 내가 theese 코드를 인쇄 볼 수 있습니다 :

$request = new FacebookRequest($session, 'GET', '/a page id/feed'.$sfield); 

$response = $request->execute(); 
// get response 
$graphObject = $response->getGraphObject(); 
// print data 
echo '<pre>' . print_r($graphObject, 1) . '</pre>'; 

을 그래서 지금 내가 파일이나 내가 같이 $ graphObject를 사용하려면 데이터베이스에 메시지를 저장하려면 배열 오류가 발생합니다 :

Fatal error: Cannot use object of type Facebook\GraphObject as array in /home/micengco/public_html/parser/facebook.php on line 34 

어떻게 이렇게 할 수 있습니까 ??

답변

0

개체에는 배열과 다른 탐색 방법이 있습니다. 난 당신이 같은 것을 할 필요가 생각 : 이러한 경우

$graphObject = $response->getGraphObject(); 
$backingData = $graphObject->backingData; 
$data = $backingData[data][0]; 

가 읽고 신중하게 구조를 이해할 필요가있다. 이러한 데이터 구조에는 연관 및 수치 인덱스 배열이 있습니다. 내가 무엇을하는지는 먼저 객체의 'backingData'속성을 가져 오는 것입니다. 이제이 속성 아래 키 '데이터'가 포함 된 연관 배열이 있습니다. 그 밑에는 여러분의 예제에서 하나의 요소 만있는 수치 적 인덱스 배열이 있습니다. 요소가 여러 개인 경우 루프를 실행해야합니다. 배열 : "보호 backingData가"; - : 밖으로 아래

+0

어디서 전체 문서를 찾을 수 있습니까 – simba

+0

당신은 Facebook에서 문서화를 의미합니까? – nitigyan

+0

any, Facebook 또는 다른 곳에서 !! – simba

1

검사는 제공하지 않습니다

$request = new FacebookRequest($session, 'GET', '/a page id/feed'.$sfield); 

$response = $request->execute(); 
// get response 
$graphObject = $response->getGraphObject()->asArray(); 
// print data 
echo '<pre>' . print_r($graphObject, 1) . '</pre>'; 

(일반 배열과 같은 출력을 얻을 "> asArray()"를 추가해야합니다).