Мне нужно разработать скрипт, чтобы получать упоминания о бренде из Twitter.Поэтому я хочу найти твит, содержащий упоминание моего бренда или ключевые слова.Это нормально работает, но мне нужно удалить подобные твиты.Я попробовал этот код, но не работает так, как мне хотелось бы:
session_start();
require_once("twitteroauth/twitteroauth.php"); //Path to twitteroauth library
$twitteruser = "xxx";
$notweets = 30;
$consumerkey = "xxxx";
$consumersecret = "xxx";
$accesstoken = "xxx";
$accesstokensecret = "xxx";
//use the php similar_text function to remove similar tweets
function removeSimilar ($array, $minSimilarity = 60) {
$result = [];
foreach ($array as $outerValue) {
$append = true;
foreach ($result as $key => $innerValue) {
$similarity = null;
similar_text($innerValue, $outerValue, $similarity);
if ($similarity >= $minSimilarity) {
if (strlen($outerValue) > strlen($innerValue)) {
// always keep the longer one
$result[$key] = $outerValue;
}
$append = false;
break;
}
}
if ($append) {
$result[] = $outerValue;
}
}
return $result;
}
function getConnectionWithAccessToken($cons_key, $cons_secret, $oauth_token, $oauth_token_secret) {
$connection = new TwitterOAuth($cons_key, $cons_secret, $oauth_token, $oauth_token_secret);
return $connection;
}
$connection = getConnectionWithAccessToken($consumerkey, $consumersecret, $accesstoken, $accesstokensecret);
$tweets = $connection->get("https://api.twitter.com/1.1/search/tweets.json?q=london+exclude:retweets+exclude:replies&since=2019-03-01&count=100");
$encode = json_encode($tweets);
$decode = json_decode($encode,true);
$decode = removeSimilar($decode);
foreach($decode['statuses'] as $tweets) {
echo '<p>' . $tweets['text'] . '</p>';
}
Может ли кто-нибудь мне помочь?Я знаю, что проблема связана с переменной $ decode, но, честно говоря, я не знаю, как ее решить.
Большое спасибо!