chrismou / lastfm

一个简单但功能齐全的 Last.fm API 包装器,支持 Guzzle 6

dev-master / 1.0.x-dev 2016-03-24 14:36 UTC

This package is auto-updated.

Last update: 2024-09-12 03:50:47 UTC


README

Build Status Test Coverage Code Climate Buy me a beer

这是一个非常简单的 last.fm API 包装器类。在使用了几个现有的 last.fm 包装器类之后,很明显大多数要么是 a) 不完整,b) 看起来已被遗弃,或者 c) 单元测试不佳。2015 年 8 月 last.fm 重构后,我之前选择的库开始抛出意外的错误。在这个时候,我认为最好还是自己写一个。

这个库旨在解决这些问题,提供了一个简单、集中的方式来调用 last.fm API 上的任何方法,这意味着它应该可以无缝支持所有未来 API 的新增功能。它还包括一套完整的单元测试。

安装

对于基于 composer 的项目

composer require chrismou/lastfm

用法

首先您需要一个来自 Last.FM 的 API 密钥和密钥。您可以通过在此处注册来获得一个: http://www.last.fm/api

设置 last.fm API 客户端

$lastfm = new \Chrismou\LastFm\LastFm(
    new GuzzleHttp\Client(),
    YOUR_API_KEY,
    YOUR_API_SECRET
);

调用格式为: $lastfm->get($method, $parameters);,其中 method 是 last.fm API 方法名称。

例如,如果您想获取一个艺术家的信息,您可以运行

$lastfm->get('artist.getInfo', 'cher');

这会发起一个请求并返回艺术家 'Cher' 的所有信息。

请参阅 last.fm API 文档 获取可用的方法和所需参数的完整列表。

测试

运行单元测试套件

curl -s https://getcomposer.org/installer | php
php composer.phar install
./vendor/bin/phpunit

如果您使用 docker,您还可以针对所有支持的 PHP 版本运行测试套件

./vendor/bin/dunit

许可证

在 MIT 许可证下发布。请参阅 LICENSE

感谢

dandelionmood/php-lastfm,这个库的原始灵感来源。