dg / twitter-php
小巧简单的PHP Twitter库
Requires
- php: >=7.1
- ext-curl: *
- ext-json: *
README
Twitter for PHP是一个非常小巧且易于使用的库,用于向Twitter发送消息和接收状态更新。
它需要PHP 5.4或更高版本,并带有CURL扩展,采用新BSD许可证授权。您可以从我们的GitHub仓库获取最新版本,或通过Composer安装。
composer require dg/twitter-php
支持我
你喜欢Nette DI吗?你是否期待新功能?
谢谢!
使用方法
登录到https://twitter.com,并在https://apps.twitter.com页面注册一个应用。请记住,永远不要泄露你的消费者密钥。点击侧边栏中的“我的访问令牌”链接,获取你自己的访问令牌。现在你有消费者密钥、消费者密钥、访问令牌和访问令牌密钥。
使用应用和请求/访问密钥创建对象
use DG\Twitter\Twitter; $twitter = new Twitter($consumerKey, $consumerSecret, $accessToken, $accessTokenSecret);
send()方法更新你的状态。消息必须使用UTF-8编码
$twitter->send('I am fine today.');
load()方法返回你发布的20条最新状态更新
$statuses = $twitter->load(Twitter::ME);
或你和你朋友发布的
$statuses = $twitter->load(Twitter::ME_AND_FRIENDS);
或对你最新的提及
$statuses = $twitter->load(Twitter::REPLIES);
从通道中提取信息很容易
foreach ($statuses as $status) { echo "message: ", Twitter::clickable($status); echo "posted at " , $status->created_at; echo "posted by " , $status->user->name; }
静态方法Twitter::clickable()
使状态中的链接、提及和哈希标签可点击。
authenticate()方法测试用户凭据是否有效
if (!$twitter->authenticate()) { die('Invalid name or password'); }
search()方法提供Twitter状态中的搜索
$results = $twitter->search('#nette');
返回的结果是状态数组。
错误处理
所有方法在发生错误时都会抛出DG\Twitter\Exception
try { $statuses = $twitter->load(Twitter::ME); } catch (DG\Twitter\Exception $e) { echo "Error: ", $e->getMessage(); }
附加功能
authenticate()方法测试用户凭据是否有效
if (!$twitter->authenticate()) { die('Invalid name or password'); }
其他命令
你可以使用Twitter API 1.1定义的所有命令。例如,GET statuses/retweets_of_me返回认证用户编写的最新推文的数组。
$statuses = $twitter->request('statuses/retweets_of_me', 'GET', ['count' => 20]);
变更日志
v4.1 (11/2019)
- 添加了删除方法 (#68)
- token是可选的,并提供get()方法
v4.0 (2/2019)
- 需要PHP 7.1并使用其优势,如类型提示、严格类型等。
- 类Twitter现在是DG\Twitter\Twitter
- 类TwitterException现在是DG\Twitter\Exception
v3.8 (2/2019)
- Twitter::sendDirectMessage()使用新API
- Twitter::clickable: 添加对 $status->full_text (#60) 的支持
v3.7 (3/2018)
- 最低所需的PHP版本更改为5.4
- Twitter::send()添加了$options
- Twitter::clickable()现在仅与状态和实体一起工作
- 修复了编码风格
v3.6 (8/2016)
- 添加了loadUserFollowersList()和sendDirectMessage()
- Twitter::send()允许上传多张图片
- 将http://更改为https://
v3.5 (12/2014)
- 允许在PHP >= 5.5中同时发送以@开始的消息和上传文件
v3.4 (11/2014)
- 可以将缓存过期时间指定为字符串
- 修复了一些错误
v3.3 (3/2014)
- Twitter::send($status, $image)可以上传图片
- 添加了Twitter::follow()
v3.2 (1/2014)
- Twitter API使用SSL OAuth
- Twitter::clickable()支持媒体
- 添加了Twitter::loadUserInfoById()和loadUserFollowers()
- 修复了Twitter::destroy()
v3.1 (3/2013)
- Twitter::load() - 添加了第三个参数 $data
- Twitter::clickable()使用实体;作为参数传递状态对象,而不仅仅是文本
- 增加了 Twitter::$httpOptions 以进行自定义 cURL 配置
v3.0 (12/2012)
- 更新到 Twitter API 1.1。移除了 Twitter 废弃的一些功能
- 移除了 RSS、ATOM 和 XML 支持
- 移除了 Twitter::ALL
- Twitter::load() - 移除了第三个参数 $page
- Twitter::search() 需要认证,并返回不同的结构
- 移除了使用 http://is.gd 短链接功能
- 改变了 Twitter::request() 参数的顺序为 $resource, $method, $data
v2.0 (8/2012)
- 增加了对 OAuth 认证协议的支持
- 增加了 Twitter::clickable(),使链接、@用户名和 #标签可点击
- 通过
composer require dg/twitter-php
安装
v1.0 (7/2008)
- 首次发布
(c) David Grudl, 2008, 2016 (https://davidgrudl.com)