zetaphor/reddit-api-client

提供对reddit.com API的接口

2.1.1 2015-12-04 16:03 UTC

This package is not auto-updated.

Last update: 2024-09-14 18:20:35 UTC


README

Build Status Latest Stable Version Latest Stable Version Minimum PHP Version

这是一个基于Reddit API的PHP客户端,建立在Guzzle网络服务客户端框架之上。

快速体验,以下是示例代码

<?php
require 'vendor/autoload.php';

$clientFactory = new Reddit\Api\Client\Factory;
$client = $clientFactory->createClient();

$login = $client->getCommand(
    'Login',
    array(
        'api_type' => 'json',
        'user'     => 'Example_User',
        'passwd'   => 'password123',
    )
);
$login->execute();

$submit = $client->getCommand(
    'Submit',
    array(
        'sr'    => 'programming',
        'kind'  => 'link',
        'title' => 'Mongo DB Is Web Scale',
        'url'   => 'http://www.youtube.com/watch?v=b2F-DItXtZs',
    )
);
$submit->execute();

安装

此项目与Composer捆绑。将以下内容添加到项目composer.json文件的require部分

"zetaphor/reddit-api-client": "dev-master"

之后,只需运行php composer.phar update即可!如果您有任何问题或需要更多详细信息,我已设置了一个Reddit Console示例项目以供参考。

开发状态

Reddit的API非常庞大,./api/目录中的服务描述JSON是不完整的。

支持的URI

  • api/login/{user}
  • api/me.json
  • api/register
  • api/submit
  • api/del
  • api/vote
  • api/comment
  • api/message
  • by_id/t3_{id}.json
  • r/{subreddit}.json
  • user/{id}.json
  • user/{id}/about.json

上述列表涵盖了大多数常见交互,如登录、读取和发布链接和评论,以及投票。然而,Reddit的API中还有数十个其他服务可用,欢迎通过简单的拉取请求向服务描述JSON添加条目。

贡献

这是一个相当简单的项目,所以没有太多指南。如果您修复了错误或添加了功能,让我们将其合并回项目中。有两个硬性规则。

1. 测试您的更改

此项目是测试驱动的。请不要在没有相应单元测试的情况下提交任何代码更改。

$ make phpunit

2. 遵循PSR2

遵循PSR-2标准。

$ make phpcs

许可

此项目根据MIT许可证发布。