ballen/砾石

砾石是一个PHP库,它提供了获取和显示Gravatars的简单方法。

3.0.3 2022-12-25 00:30 UTC

This package is auto-updated.

Last update: 2024-09-25 04:11:32 UTC


README

Build Code Coverage Scrutinizer Code Quality Code Climate Latest Stable Version Latest Unstable Version License

Gravel 是一个用于处理 Gravatar 头像的PHP库。

Gravel 由 Bobby Allen 编写和维护,该库采用 MIT 许可证

需求

此库是为PHP 7.3+开发和测试的

此库针对PHP 7.3、7.4、8.0、8.1和8.2进行了单元测试!

如果您需要使用较旧的PHP版本,则应安装此库的2.x版本(以下为详细信息)。

许可证

此客户端库以MIT许可证发布,此包中提供了许可证的副本。

安装

安装Gravel的最新版本推荐使用 Composer;要在控制台使用Composer安装,请输入以下命令

composer require ballen/gravel

您还可以手动从GitHub下载库的最新版本的 ziptar.gz 归档,并将 Gravatar.php 脚本(库)包含在内,如果愿意,可以单独使用。

如果您需要使用较旧的PHP版本,2.x.x版本支持PHP 5.3、5.4、5.5、5.6、7.0、7.1和7.2,您可以使用Composer使用以下命令安装此版本

composer require ballen/gravel ^2.0

Laravel集成

Gravel支持Laravel 4.x、5.x、6.x、7.x和8.x;它包含一个 服务提供者,这将注册 外观 以便于集成。

在Laravel 7.x和8.x中,这将是自动发现的,无需将其添加到 config/app.php$providers 数组中!

如果您正在使用Laravel的早期版本,则需要手动启用此功能,这可以通过打开您的Laravel应用程序的配置文件 config/app.php(或如果您使用Laravel 4.x,则为 app/config/app.php)并添加以下行来实现。

$providers 数组中添加此包的服务提供者。

Ballen\Gravel\GravelServiceProvider::class,

Gravatar包现在将由Laravel框架(通过Composer)自动加载,库的使用非常简单...

示例用法

如果您已使用Composer或手动安装了库,并且(只要您的应用程序已经 requiresincludes composer的 autoload.php),则可以创建一个新的对象实例,并在您的应用程序中立即使用它,如下所示

use Ballen\Gravel\Gravatar;

$avatar = new Gravatar('bobbyallen.uk@gmail.com');
$avatar->setSize(100); // We want a 100x100px sized avatar instead of the default 120x120px

/**
* You can then obtain the avatar URL either by using the buildGravatarUrl() method or utilising
* the __toString() class method like so:
*/
<image src="<?php echo $avatar; ?>">

有关如何利用此库的其他“注释”示例,请参阅 examples/Examples.php 文件。

Laravel示例

我决定实现Laravel类型的风格(make()get()),因此它应该同时满足那些喜欢setter和getter前缀方法的硬核开发者以及那些喜欢简洁方法名称的开发者!

如果您已如上所述添加了Laravel服务提供者和别名,您可以使用该库,如下所示

# Laravel 4.x example
return View::make('userprofile')
    ->with('gravatar', Gravatar::make('bobbyallen.uk@gmail.com')->size(200)->get());

# Laravel 5.x and 6.x example (using the view() helper method)
return view('userprofile')
    ->with('gravatar', Gravatar::make('bobbyallen.uk@gmail.com')->size(200)->get());

测试和覆盖率

此库完全使用PHPUnit进行单元测试。

我使用GitHub Actions进行持续集成,每次提交都会触发PHP 7.3、7.4、8.0、8.1和8.2的测试。

如果您想亲自运行测试,应执行以下命令

# Install the Gravel Library with the 'development' packages this then includes PHPUnit!
composer install


# Now we run the unit tests (from the root of the project) like so:
./vendor/bin/phpunit

还可以运行代码覆盖率并生成报告(这需要安装XDebug)...

./vendor/bin/phpunit --coverage-html ./report

支持

我很乐意通过我的个人电子邮件地址提供支持,因此如果您需要帮助,请发送电子邮件至:ballen@bobbyallen.me