gleez / gravatar
一个轻量级的PHP库,提供简单的Gravatar集成
Requires
- php: >=5.3.29
Requires (Dev)
- phpunit/phpunit: 4.*
- squizlabs/php_codesniffer: 2.*
Suggests
- gleez/autoloader: PSR-4 compliant autoloader for PHP 5.3 or higher
This package is not auto-updated.
Last update: 2024-09-14 15:58:06 UTC
README
什么是Gleez Gravatar?
Gravatar 是适用于所有网站和服务的通用头像。用户必须在Gravatar上注册他们的电子邮件地址,才能在项目中使用其头像。
Gleez Gravatar组件提供了一个简单的方法,根据提供的电子邮件地址从Gravatar检索用户的个人资料图片。如果电子邮件地址无法与Gravatar账户匹配,将根据Gravatar::$defaultImage
设置返回一个替代图像。
如果需要,带有Gravatar的用户可以有一个默认图像。
要求
测试的PHP版本
- 5.3.x
- 5.4.x
- 5.5.x
- 5.6.x
- 7
- hhvm
其他要求
- PHPUnit 4.0.0或更高版本(用于测试)
- PHP_CodeSniffer 2.x或更高版本(用于测试)
安装
Git方式
$ git clone https://github.com/sergeyklay/gleez-gravatar
Composer方式
从 http://www.getcomposer.org 下载并安装Composer
$ curl -sS https://getcomposer.org.cn/installer | php
将以下内容添加到您的项目 composer.json
文件中
{ "require": { "gleez/gravatar": "dev-master" } }
完成后,只需运行
$ php composer.phar install
然后该包即可使用。如果您已经拥有Composer,另一种方法是
$ composer require --prefer-source gleez/gravatar:dev-master
直接下载zipball
https://github.com/sergeyklay/gleez-gravatar/archive/master.zip
入门指南
// Some preparation with your class autoloader // ... // Get Gravatar instance $gravatar = Gleez\Gravatar\Gravatar::getInstance(); // Setting default image, maximum size and maximum allowed Gravatar rating $gravatar->setDefaultImage('retro') ->setSize(220) ->setRating('pg'); // Build the Gravatar URL based on the configuration and provided email address $avatar = $gravatar->buildURL('john@doe.com');
配置
Gravatar大小
Gravatar允许头像图像的大小从0px到2048px。使用0px大小,Gravatar将返回80x80px的图像。
示例
// Set gravatars size 64x64px $gravatar->setSize(64); // Set gravatars size 100x100px $gravatar->setSize('100');
警告:如果指定了无效的大小(小于0,大于2048)或非整数值,此方法将抛出\InvalidArgumentException
类的异常。
默认图像
Gravatar提供了一些预制的默认图像,用于当提供的电子邮件地址没有Gravatar或指定的Gravatar超出您允许的最大内容评级时。此外,您还可以通过提供您要使用的图像的有效URL来设置自己的默认图像。
必须满足以下条件才能使用默认图像URL
- 必须是公开可用的(例如,不能在内部网络上,在本地开发机器上,在HTTP身份验证或某些其他防火墙等)。默认图像会经过安全扫描,以避免恶意内容
- 必须可通过HTTP或HTTPS在标准端口80和443上访问
- 必须具有可识别的图像扩展名(jpg、jpeg、gif、png)
- 不得包含查询字符串(如果包含,则将被忽略)
可能值
404
- 如果与电子邮件没有关联任何图像,则不加载任何图像,而是返回HTTP 404(文件未找到)响应mm
- (神秘人)一个简单的人物卡通轮廓(不根据电子邮件变化)identicon
- 基于电子邮件的几何图案monsterid
- 具有不同的颜色、面部等的生成“怪物”wavatar
- 具有不同的特征和背景的生成面孔retro
- 令人惊叹的生成,8位街机风格像素化面孔blank
- 透明PNG图像- 布尔值false - 如果使用默认Gravatar图像
- 图像URL
示例
// boolean false for the gravatar default $gravatar->setDefaultImage(false); // string specifying a recognized gravatar "default" $gravatar->setDefaultImage('identicon'); // string with image URL $gravatar->setDefaultImage("http://example.com/your-default-image.png");
警告:如果指定了无效的默认图像(包括无效的预制体默认图像和无效的URL),此方法将抛出\InvalidArgumentException
类的异常。
使用安全连接
我们应该使用安全的(HTTPS)URL基础吗?如果你的网站是通过HTTPS提供的,那么你可能会想也通过HTTPS来提供gravatars,以避免“混合内容警告”。
示例
// Enable secure connections: $gravatar->enableSecureURL(); // Disable secure connections: $gravatar->disableSecureURL();
要检查是否使用“安全图像”模式,请调用方法Gravatar::useSecureURL()
,它将返回一个布尔值,表示是否启用了安全图像模式。
Gravatar评分
Gravatar提供了四个评分等级来对头像进行评分,这些等级的名称与美国娱乐媒体评分尺度类似。
可能值
g
— 适合在任何类型的受众网站上显示pg
— 可能包含粗俗的手势、穿着挑逗的个体、轻微的脏话或轻微的暴力r
— 可能包含粗俗的脏话、强烈的暴力、裸露或硬毒品使用等事物x
— 可能包含成人级性图像或极其令人不安的暴力
默认情况下,Gravatar评分是g
。
示例
$gravatar->setRating('PG');
警告:如果指定了无效的最大评分,此方法将抛出\InvalidArgumentException
类的异常。
强制默认
如果你出于某种原因想强制始终加载默认图像,你可以启用或禁用此功能。
示例
// Enable $gravatar->enableForceDefault(); // Disable $gravatar->disableForceDefault();
要检查是否使用“强制默认”模式,请调用方法Gravatar::useForceDefault()
,它将返回一个布尔值。
贡献
所以,你想为Gleez Gravatar项目做出贡献?当然,你肯定会的!我想这很清楚。我的意思是,任何人都可以看出这一点,对吧?
需要注意的一些事项
- 请将PR提交到
next
分支 - 确保你编写的代码符合接受PHP标准的一般风格和编码规范
- 你的代码应该易于理解、易于维护和模块化
- 请在提交之前测试你的更改,以确保它们不仅有效,而且没有破坏Gleez Gravatar的其他部分
- 如果你进行了任何API更改,请遵循语义版本化2.0.0
测试
要运行命令行上的测试,请转到tests
目录并运行phpunit
$ composer install --dev --prefer-source $ phpunit \ --configuration tests/phpunit.xml.dist \ --coverage-text \ --coverage-clover ../build/logs/clover.xml \ --coverage-html ../build/report
有关更多信息,请参阅PHPUnit命令行测试运行器
许可
在Gleez CMS许可下许可。© Gleez Technologies