Как расшифровать твиттер JSON при добавлении нового твита? - PullRequest
0 голосов
/ 24 мая 2019

Я надеюсь, что вы можете помочь мне с этим. В основном то, что я делаю, это добавление твитов в мою учетную запись Twitter через api из панели администрирования моего сайта.

Все работает нормально, НО я не могу сохранить информацию в базе данных, потому что переменная json_decode, которая у меня есть, возвращает NULL. Я не понимаю, что является подходящим способом получить информацию из Twitter JSON.

Вот мой код:

    $settings = array(
    'oauth_access_token' => $oauth_access_token,
    'oauth_access_token_secret' => $oauth_access_token_secret,
    'consumer_key' => $consumer_key,
    'consumer_secret' => $consumer_secret
    );

    $connection = new TwitterAPIExchange($settings);
    $url = 'https://api.twitter.com/1.1/statuses/update.json';

    $requestMethod = "POST";
    $user = $twitter_user;

    $postfields = array(
        'screen_name' => $user,
        'status' => $twit ); 

    $connection->buildOauth($url, $requestMethod)
                 ->setPostfields($postfields)
                 ->performRequest();


    // get the contents of the JSON file 
    $jsonCont = file_get_contents($connection);

    //decode JSON data to PHP array
    $content = json_decode($jsonCont, true);

    $conn = new mysqli($server, $username, $password, $database);

    $id = $content['id'];
    $created = $content['created_at'];
    $tweet = $content['text'];
    $by = $content['user']['name'];

    $sql = "INSERT INTO `twitter` (`idtwit`, `tweet`, `tweetedby`, `datet`) VALUES ('".$id."', '".$tweet."', '".$by."', '".$created."')";
    $conn->query($sql);
    echo "<br /><div class='alert alert-info'>New record updated successfully</div>";

    $conn->close();

Как правильно использовать json_decode с этим ?!

Я также попытался обернуть его вокруг запроса $ connection следующим образом, исключив мою переменную, но затем он больше не будет публиковать в твиттере.

$connection->json_decode(buildOauth($url, $requestMethod)
                 ->setPostfields($postfields)
                 ->performRequest(),$assoc = TRUE);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...