nicolas-gille / gravatar-lib
一个简单的库,用于在应用程序中集成Gravatar服务。
This package is not auto-updated.
Last update: 2024-09-25 01:26:53 UTC
README
Gravatar Lib 是一个用于帮助在应用程序中集成 Gravatar 服务的库。
要求
- PHP 7.0.0 或更高版本。
- hash() 函数必须可用,同时需要 md5 算法。
用法
安装
您可以使用 composer 安装 Gravatar Lib,执行以下命令:$ composer require nicolas-gille/gravatar-lib 您也可以直接从 Github 克隆或下载源代码,并在您的应用程序上安装它。
通用示例
<?php // Includes sources or use autoloader to load directly the class. include_once('includes/gravatar-lib/src/Gravatar/Gravatar.php'); // Create an instance of Gravatar with default value. $gravatar = new GravatarLib\Gravatar\Gravatar(); // Set size and rating like this or use it directly on constructor. $gravatar->setSize(160); $gravatar->setMaxRating('pg'); // Generate uri to show avatar. $uri = $gravatar->getUri('mail@domain.com'); // Display it. echo '<img src="' . $uri . '" alt="Gravatar\'s image">';
设置头像大小。
Gravatar 提供更改您头像大小的功能。默认情况下,Gravatar 提供的大小为 80 像素,但您可以将它扩展到 2048 像素。要更新头像大小,请使用方法 GravatarLib\Gravatar\Gravatar->setSize(int)。
以下是一个设置头像大小的示例
$gravatar->setSize(160);
注意
如果您超过最大值或最小值,此方法将抛出 \InvalidArgumentException 异常,并显示消息 大小必须在 0 到 2048 之间。
设置默认图片。
Gravatar 为没有上传头像的人提供了几个默认头像。然后,您可以使用这些方法 GravatarLib\Gravatar\Gravatar->setDefaultImage(string) 来更改默认图片。Gravatar 提供的默认值包括:'404', 'mm', 'identicon', 'monsterid', 'retro', 'wavatar' 和 'blank'。
另一种设置默认图片的方法是在方法的参数中发送正确的 uri 来获取图片,而不是使用 Gravatar 提供的默认值。
要使用您自己的头像,您可以在构造函数中不设置默认值来使用您的头像。
以下是一个设置默认图片的示例
$gravatar->setDefaultImage('blank'); // with default value. $gravatar->setDefaultImage('http://my-website/my-avatar.jpg'); // with url. $gravatar->setDefaultImage(''); // Cannot use default image.
注意
如果您发送无效的 URL 或不包含在 Gravatar API 中的字符串,此方法将抛出 \InvalidArgumentException 异常,并显示消息 指定的默认图片不是一个有效的 URL 或 Gravatar 中的默认值。。
设置图片评级
使用 Gravatar,您可以阻止某些类型的内容,如美国的 ESRB 或欧洲的 PEGI。然后,如果您阻止特定的头像,您可以使用方法 GravatarLib\Gravatar\Gravatar->setMaxRating(string) 在您的应用程序中设置允许的最大评级。此方法允许的默认值是:'g', 'pg', 'r', 'x'。
以下是一个设置最大评级的示例
$gravatar->setMaxRating('g');
注意
如果您发送一个与有效值不同的字符串,此方法将抛出 \InvalidArgumentException 异常,并显示消息 指定的评级无效。请使用 "g","pg","r" 或 "x" 值。。
设置安全 uri。
实际上,Gravatar 提供两种方式来获取图片,分别是在 HTTP 和 HTTPS 中。默认情况下,库通过 HTTP 加载图片,但如果您愿意,您可以使用方法 GravatarLib\Gravatar\Gravatar->setSecureUri(bool) 来更改此方法。
$gravatar->setSecureUri(true); // Use HTTPS instead of HTTP.
强制默认图片
您可以为连接到您的应用程序的每个人强制使用默认图片。要强制使用默认图片,请使用方法 GravatarLib\Gravatar\Gravatar->setForceDefaultImage(bool)。
$gravatar->setForceDefaultImage(true); // Force all people to show default image instead of account avatar.
Twig 集成
您可以将此库轻松集成到使用 Twig 构建的项目中。实际上,要集成库,请使用 Twig_Environment 对象,并将其作为全局属性添加到其中。
<?php // Includes sources or use autoloader to load directly the class. include_once('includes/gravatar-lib/src/Gravatar/Gravatar.php'); // Create an instance of Gravatar with default value. $gravatar = new GravatarLib\Gravatar\Gravatar(); // ... do whatever you want with your settings here // here, we will assume $twig is an already-created instance of Twig_Environment $twig->addGlobal('gravatar', $gravatar);
然后,要将其用于模板,您必须调用对象 gravatar,使用方法 gravatar.uri(email) 来显示头像。
<img alt="{{ app.user.username }}'s avatar" src="{{ gravatar.uri(app.user.email)|raw }}">
在上面的示例中,app.user.username 和 app.user.email 分别包含用户的用户名和电子邮件。
许可证
本项目采用MIT许可证。
作者
- Nicolas GILLE : nic.gille@gmail.com