2013-10-08 4 views
1

Я пытаюсь получить данные из Facebook в таблицу, и я использую код, который следует, но у меня возникают некоторые проблемы:PHP Facebook JSON преобразования инструмент CSV

PHP Warning: Invalid аргумент поставляется для Еогеаспа() в /opt/lampp/htdocs/xampp/tratajson.php на линии 27

Вот мой код:

<?php 
    $arquivo = fopen('/filepath.csv','w'); 
    $request_url ="/filepath.json"; 
    $requests = file_get_contents($request_url); 
    $fb_response = json_decode($requests); 

    foreach ($fb_response->feed->data as $item) 
    { 
    $mensagem=trim($item->message);  
    $mensagem = str_replace(array("\r\n", "\r", "\n","(",")","chr(13)","\t", "\0", "\x0B"), "", $mensagem); 

    $quempostou=$item->from->name; 
    $data=$item->created_time; 

    $ncomentarios=0; 
    $nlikes=0; 
    foreach ($item->comments as $comentarios) 
    { 
     $ncomentarios++; 
     foreach ($comentarios as $comentario) 
     { 
     echo "Quem comentou:"; 
     echo $comentario->from->name; 
     $comentou=$comentario->from->name; 

     echo " Curtir:"; 
     echo $comentario->like_count; 
     $curtidas=$comentario->likecount; 
     $nlikes=$nlikes+$curtidas; 

     echo " Data:"; 
     $datacomentario = $comentario->created_time; 
     echo $datacomentario; 

     echo " Comentario:"; 
     $comentario=$comentario->message; 
        $comentario = str_replace(array("\r\n", "\r", "\n","(",")"), "", $comentario); 
     echo $comentario; 

     $grava="COMENTARIO:".";".$comentario.";".$comentou.";".$datacomentario.";".$curtidas."\n"; 

     fwrite($arquivo,$grava); 

     echo "<br>";  
     } 
    } 

    echo "Quem postou: $quempostou <br>"; 
    echo "Mensagem: $mensagem <br>"; 
    echo "Data: $data <br>"; 
    echo "Comentarios: $ncomentarios <br>"; 
    echo "Likes na thread: $nlikes <br>"; 
    echo "<br><br>"; 

    $grava="POST:".";".$mensagem.";".$quempostou.";".$data.";".$ncomentarios.";".$nlikes."\n\n"; 
    fwrite($arquivo,$grava); 
    } 
    fclose($arquivo); 
?> 

запрашиваемый файл в $ request_url имеют Структуры e файла JSON, который был возвращен в API-интерфейсе API-интерфейса FB:

Может кто-нибудь мне помочь?

+0

Вы можете разместить образец JSON? –

+0

вы можете увидеть здесь @AmalMurali: https://developers.facebook.com/tools/explorer?method=GET&path=stackoverflowpage%3Ffields%3Dfeed.limit(1) – lnasci

ответ

0

Попробуйте изменить $fb_response = json_decode($requests); в этот $fb_response = json_decode($requests,true);

+0

с этим изменением я получаю следующий результат: -PHP Примечание. Попытка получить свойство не-объекта в /opt/lampp/htdocs/xampp/tratajson.php в строке 10 -PHP Примечание: попытка получить свойство не-объекта в/opt/lampp/htdocs/xampp/tratajson .php в строке 10 -PHP Предупреждение: неверный аргумент, предоставленный foreach() в файле /opt/lampp/htdocs/xampp/tratajson.php в строке 10 – lnasci

+0

, и не возвращайте ни одной строки в моей таблице, прежде чем я получу строки но, с некоторыми erros, как табуляция и подсчет эррос в «любит» и «комментарии», – lnasci

Смежные вопросы