首页 > 解决方案 > Twitter API 1.1 我如何使用 php 显示谁发了推文和个人资料图片

问题描述

我正在尝试使用 Tesla 搜索推文并让它显示推文、个人资料图片、推文时间和推文 ID。我只能让它显示推文、时间和 ID。我需要做什么才能将其发送给发推文的人和个人资料图片我拥有的代码如下。

<?php
require_once('TwitterAPIExchange.php');

$settings = array(
'oauth_access_token' => "",
'oauth_access_token_secret' => "",
'consumer_key' => "",
'consumer_secret' => ""
 );
 $url = "https://api.twitter.com/1.1/search/tweets.json";
$requestMethod = "GET";
$getfield = '?q=Tesla&result_type=recent&count=10';
$twitter = new TwitterAPIExchange($settings);
$string = json_decode($twitter->setGetfield($getfield)
->buildOauth($url, $requestMethod)
->performRequest(),$assoc = TRUE);
foreach($string['statuses'] as $tweets) {
echo $tweets['text'] . '<br>';
echo $tweets['created_at'] . '<br>';
echo $tweets['id_str'] . '<br>';


}

标签: phpapitwittertwitter-oauth

解决方案


我切换到 twitteroauth,它让一切变得更容易。如果有人需要,我发现的解决方案如下。

<?php
include "twitteroauth/twitteroauth.php";


$oauth_access_token = "xx";
$oauth_access_token_secret = "xx";
$consumer_key = "xx";
$consumer_secret = "xx";

$twitter = new TwitterOAuth($consumer_key,$consumer_secret,$oauth_access_token,$oauth_access_token_secret);

$tweets = $twitter->get('https://api.twitter.com/1.1/search/tweets.json?q=Tesla&result_type=recent&count=10');

?>
<!DOCTYPE html>
 <html lang="en">
<head>
<meta charset="UTF-8">
<title>Twitter API SEARCH</title>
 </head>
<body>
<?php foreach ($tweets->statuses as $key => $tweet) { ?>
   Tweeted BY: <img src="<?=$tweet->user->profile_image_url;?>" /><?=$tweet->user->screen_name; ?> <br>
  Tweet :<?=$tweet->text; ?><br>
  ID : <?=$tweet->user->id_str;?> /><br>
  Tweeted on : <?=$tweet->created_at;?> <br> <BR>
<?php } ?>


</body>
</html>

推荐阅读