Я пытаюсь настроить инструмент для получения чьего-либо идентификатора Twitter без использования твиттер-API.
В моем примере мое имя пользователя - quixthe2nd.
Так что, если вы введете чье-то имя пользователя в Twitter вэта ссылка:
https://twitter.com/quixthe2nd/profile_image?size=original
Она будет перенаправлена на:
https://pbs.twimg.com/profile_images/1116692743361687553/0P-dk3sF.jpg
Идентификатор 1116692743361687553
.Он указан после https://pbs.twimg.com/profile_images/
.
Мой код:
$url = "https://twitter.com/quixthe2nd/profile_image?size=original";
function get_redirect_target($url)
{
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_NOBODY, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$headers = curl_exec($ch);
curl_close($ch);
// Check if there's a Location: header (redirect)
if (preg_match('/^Location: (.+)$/im', $headers, $matches))
return trim($matches[1]);
// If not, there was no redirect so return the original URL
// (Alternatively change this to return false)
return $url;
}
function get_redirect_final_target($url)
{
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_NOBODY, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); // follow redirects
curl_setopt($ch, CURLOPT_AUTOREFERER, 1); // set referer on redirect
curl_exec($ch);
$target = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL);
curl_close($ch);
if ($target)
return $target;
return false;
}
$s = $target;
if(preg_match('/profile_images\/\K[^\/]+/',$s,$matches)) {
print($matches[0]);
}
Мой код ничего не выводит.Как бы я мог получить это через PHP?