Twitter bootstrap twitterapi:Url搜索用户名
我有一个网站列表,我想看看他们是否有twitter帐户。我很好奇API中是否有用户名的url搜索,或者类似的东西。我一直在阅读和环顾四周;然而,我还是做不到。当我可以运行一个函数来为我做这些工作时,我不愿意手动完成这项工作。非常感谢您对本主题的反馈Twitter bootstrap twitterapi:Url搜索用户名,twitter-bootstrap,twitter,twitter-oauth,Twitter Bootstrap,Twitter,Twitter Oauth,我有一个网站列表,我想看看他们是否有twitter帐户。我很好奇API中是否有用户名的url搜索,或者类似的东西。我一直在阅读和环顾四周;然而,我还是做不到。当我可以运行一个函数来为我做这些工作时,我不愿意手动完成这项工作。非常感谢您对本主题的反馈 你好 正如上面评论中所解释的,twitter API的第1版已被弃用,不久将被完全删除。这意味着简单的请求一旦被删除,将不再有效,这很快就会实现 基本上,从那时起,为了从twitter获取任何类型的数据,您需要使用其版本1.1api发出经过身份验证的
你好 正如上面评论中所解释的,twitter API的第1版已被弃用,不久将被完全删除。这意味着简单的请求一旦被删除,将不再有效,这很快就会实现 基本上,从那时起,为了从twitter获取任何类型的数据,您需要使用其版本1.1api发出经过身份验证的请求 这为需要它们的人解释了使用PHP调用他们的1.1版api所需的确切步骤 这是你想做的,在你彻底阅读了上面的文章之后
有了上述信息和我的类,您可以非常轻松地为用户执行请求
require_once "TwitterAPIExchange.php";
// As my post explains, these are the keys you get from the twitter dev site
$settings = array(
'oauth_access_token' => "YOUR_OAUTH_ACCESS_TOKEN",
'oauth_access_token_secret' => "YOUR_OAUTH_ACCESS_TOKEN_SECRET",
'consumer_key' => "YOUR_CONSUMER_KEY",
'consumer_secret' => "YOUR_CONSUMER_SECRET"
);
// This is the username you want to check. You can get it however you want. Just place it into this $username variable.
$username = 'USERNAMEHERE';
$url = 'https://api.twitter.com/1.1/statuses/user_timeline.json';
$requestMethod = 'GET';
$getfield = '?screen_name='.$username;
$twitter = new TwitterAPIExchange($settings);
$result = $twitter->setGetfield($getfield)
->buildOauth($url, $requestMethod)
->performRequest();
好的,结果现在存储在$result
变量中。你可以在这里做你想做的事。您希望检查用户是否存在,因此var\u dump()
将检查结果,并查看如何确定用户是否存在。显然,它不会包含实际用户,它可能包含false
或null
由于我不知道我的头顶,让我们假设$result->user
等于false
。您只需执行以下操作:
if (!$result->user)
{
echo "The user doesn't exist!";
}
else
{
echo "The user exists!";
}
。。。或者,简写风格(我喜欢在我的帖子中添加这样的小东西)
使用以下方法进行一些研究:
有了上述信息和我的类,您可以非常轻松地为用户执行请求
require_once "TwitterAPIExchange.php";
// As my post explains, these are the keys you get from the twitter dev site
$settings = array(
'oauth_access_token' => "YOUR_OAUTH_ACCESS_TOKEN",
'oauth_access_token_secret' => "YOUR_OAUTH_ACCESS_TOKEN_SECRET",
'consumer_key' => "YOUR_CONSUMER_KEY",
'consumer_secret' => "YOUR_CONSUMER_SECRET"
);
// This is the username you want to check. You can get it however you want. Just place it into this $username variable.
$username = 'USERNAMEHERE';
$url = 'https://api.twitter.com/1.1/statuses/user_timeline.json';
$requestMethod = 'GET';
$getfield = '?screen_name='.$username;
$twitter = new TwitterAPIExchange($settings);
$result = $twitter->setGetfield($getfield)
->buildOauth($url, $requestMethod)
->performRequest();
好的,结果现在存储在$result
变量中。你可以在这里做你想做的事。您希望检查用户是否存在,因此var\u dump()
将检查结果,并查看如何确定用户是否存在。显然,它不会包含实际用户,它可能包含false
或null
由于我不知道我的头顶,让我们假设$result->user
等于false
。您只需执行以下操作:
if (!$result->user)
{
echo "The user doesn't exist!";
}
else
{
echo "The user exists!";
}
。。。或者,简写风格(我喜欢在我的帖子中添加这样的小东西)
使用以下方法进行一些研究:
$result
转换为PHP数组。确保将第二个参数设置为true
,这样就不会在结果数组中获取对象:
$result = json_decode($result, true);
现在,您必须检查screen\u name
array键是否存在,但是array\u键\u exists不会递归地查看多维数组。因此,您需要找到一个新函数:
下面是最后一段代码,它使所有的工作。注意我在$result
数组中指向的位置。我基本上看的是发布第一条推文的用户的屏幕名称,因为Twitter API返回用户的时间线,以$username指定
$result = json_decode($result, true);
if ( array_key_exists_r('screen_name', $result ) ) {
if ( $result[0]['user']['screen_name'] == $username ) {
// The username exists
}
} else {
// The username doesn't exist
}
我不确定是否有更好的方法来检查用户名是否存在。也许只需使用check来检查错误代码?以下是我的代码,它基于上面详述的非常有用的PHP类来检查用户是否存在 首先,使用json_decode将
$result
转换为PHP数组。确保将第二个参数设置为true
,这样就不会在结果数组中获取对象:
$result = json_decode($result, true);
现在您必须检查screen\u name
array key是否存在,但是array\u key\u exists不会递归地查看mu