phalcon / incubator-avatar
Phalcon孵化器头像适配器
Requires
- php: >=7.2
- ext-json: *
- ext-phalcon: ^4.0
Requires (Dev)
- codeception/codeception: ^4.1
- codeception/module-asserts: ^1.0.0
- phalcon/ide-stubs: ^4.0
- phpstan/phpstan: ^0.12.18
- squizlabs/php_codesniffer: ^3.5
- vimeo/psalm: ^3.6
- vlucas/phpdotenv: ^2.5
This package is auto-updated.
Last update: 2024-09-19 22:20:04 UTC
README
此处适配器的使用示例
Gravatar
Gravatar的是全球通用的头像,对所有网站和服务可用。用户必须在Gravatar上注册他们的电子邮件地址,才能在您的项目中使用头像。
入门
通过setter设置
use Phalcon\Incubator\Avatar\Gravatar; $di->setShared( 'gravatar', function () { // Get Gravatar instance $gravatar = new Gravatar( [] ); // Setting default image, maximum size and maximum allowed Gravatar rating $gravatar->setDefaultImage('retro') ->setSize(220) ->setRating(Gravatar::RATING_PG); return $gravatar; } );
通过配置设置
use Phalcon\Incubator\Avatar\Gravatar; // Config must be either an array or \Phalcon\Config instance $config = [ 'default_image' => 'mm', 'rating' => 'x', 'size' => 110, 'use_https' => true, ]; $di->setShared( 'gravatar', function () use ($config) { // Get Gravatar instance $gravatar = new Gravatar($config); return $gravatar; } );
使用
// Get the Gravatar service from DI $gravatar = $this->getDi()->getShared('gravatar'); // Build the Gravatar URL based on the configuration and provided email address echo $gravatar->getAvatar('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提供gravatar,以避免“混合内容警告”。
示例
// Enable secure connections: $gravatar->enableSecureURL(); // Disable secure connections: $gravatar->disableSecureURL();
要检查您是否正在使用“安全图像”模式,请调用方法Gravatar::isUseSecureURL()
,它将返回一个布尔值,表示是否启用了安全图像模式。
Gravatar评级
Gravatar提供了四个评级等级,用于评级头像,这些等级名称与美国娱乐媒体评级尺度类似。
可能的值
Gravatar::RATING_G
— 适用于任何观众类型的所有网站Gravatar::RATING_PG
— 可能包含粗鲁的手势、挑衅性的着装、轻微的脏话或轻微的暴力Gravatar::RATING_R
— 可能包含如粗俗的脏话、激烈的暴力、裸露或硬性药物使用等内容Gravatar::RATING_X
— 可能包含成人级性图像或极其令人不安的暴力内容
默认情况下,Gravatar的评级是 Gravatar::RATING_G
。
示例
$gravatar->setRating( Gravatar::RATING_PG );
如果指定了无效的最高评级,此方法将抛出类 \InvalidArgumentException
的异常。
强制默认
如果出于某种原因您想要强制默认图像始终加载,您可以启用或禁用此功能。
示例
// Enable $gravatar->enableForceDefault(); // Disable $gravatar->disableForceDefault();
要检查您是否正在使用“强制默认”模式,请调用方法 Gravatar::isUseForceDefault()
,它将返回一个布尔值。