목차
3、作为开发这,如何使用Gravatar?
백엔드 개발 PHP 튜토리얼 全球通用头像Gravatar的介绍

全球通用头像Gravatar的介绍

Jun 20, 2016 pm 12:32 PM

1、Gravatar是什么?

Gravatar是 www.gravatar.com 推出的一项服务,意为“全球通用头像”。如果在gravatar上注册了账号并在gravatar服务器上放置了头像,那么当在支持gravatar的blog上发言时,只要提供email地址,就能够显示与email相关联的头像。这样就为大家提供了一个统一管理多个头像的平台,只要站点支持gravatar,就不必特意为每个站点单独上传头像,省去了麻烦。

2、作为普通用户,如何使用Gravatar?

首先到gravatar上注册账号,只要填写一个常用的email地址,填写好密码,然后到邮箱里确认,就注册好了一个gravatar账号。随后用账号登陆gravatar,就可以开始为账号添加头像了,每个email可以和一个头像关联,上传头像的方式有很多种。

上传处理完头像偶需要为头像选择等级,不同的等级会决定你的头像是否在站点中显示,假如你的头像过于限制级,则在不支持此等级的站点中不会显示,而只会显示一个默认头像。

  • G: 适合在所有网站的所有受众类型。

  • PG: 可能包含粗鲁手势,挑逗性的着装,少许粗话,及轻微暴力等内容。

  • R: 可能包含亵渎,极度暴力,裸体或吸毒等内容。

  • X: 可能包含赤裸的性爱或极端暴力内容。

添加完毕后还需要等待审核,一般选择了G,而你的图片没什么特别的,很快就通过。遇上慢的情况也就10分钟左右。

3、作为开发这,如何使用Gravatar?

Gravatar不但为普通用户提供了头像解决方案,还为开发者们提供了一些接口,方便开发者调用gravatar头像以及在用户gravatar头像中包含的简单Profile。在Gravatar首页中可以找到开发者文档的入口,里面有关于如何使用gravatar接口的文档。Gravatar上所有URL都是基于电子邮箱地址的哈希值。图像和个人档都是通过电子邮件的哈希值访问获取的,这是系统识别用户身份的主要方式。为确保哈希值的一致性和准确性,在生成哈希值时应遵循下列步骤:

  1. 去除掉电子邮箱地址头尾的空格符。

  2. 先将所有字母强行转换成小写字母。

  3. 使用md5算法计算处理后的电子邮箱哈希值。

比如,以”MyEmailAddress@example.com ” 为例(注意我们这里假设用户在邮箱地址末尾不小心多按了个空格),如果我们用md5直接对字符串进行编码,我们会得到下列内容:

echo md5 ( "MyEmailAddress@example.com " ) ; // "f9879d71855b5ff21e4963273a886bfc"

按照上面提到的流程处理同样的电子邮件地址,可以得到一个完全不同的计算结果:

$ email = trim ( "MyEmailAddress@example.com " ) ; // "MyEmailAddress@example.com"

$ email = strtolower ( $ email ) ; // "myemailaddress@example.com"

echo md5 ( $ email ) ; // "0bc83cb571cd1c50ba6f3e8a78ef1346"

上述代码可写成一行代码:

echo md5 ( strtolower ( trim ( "MyEmailAddress@example.com " ) ) ) ;

获得生成的哈希值,就可以请求获取图像或是个人档。图片请求URL形式类似下面:

http://www.gravatar.com/avatar/哈希值

比如下面就是一个基本的URL链接。

http://www.gravatar.com/avatar/205e460b479e2e5b48aec07710c08d50

若没有提供尺寸参数,则图像大小默认是80X80。不过,你可以通过s=或size=参数传递一个值(图像是正方形的),动态规定Gravatar图像大小。你可以请求从1px到512px范围内任意尺寸的图像,需要指出的是,许多用户头像的分辨率较低,因此大尺寸的头像效果可能较差。

如果某个电子邮件地址没有相应的Gravatar头像时会怎样呢?Gravatar会返回如下的默认头像:

如果你需要使用自己的默认头像(可能是Logo等图片),你可以在图片链接后面的d=或者default=参数中指定你自己默认图片的URL地址。这个URL链接需要进行URL编码,确保传输的正确性。

全球通用头像Gravatar的介绍

如何在PHP中对字符串进行URL编码,你可以参看下面这行代码:

echo urlencode ( 'http://example.com/images/avatar.jpg' ) ;

当你指定了默认的头像时,Gravatar在电子邮箱哈希值没有对应的头像时会显示你指定的默认头像。

除了可以设置默认的头像外,Gravatar还提供一系列的内置参数选项作为默认值。这类内置参数选项会接受电子邮箱地址的哈希值,并使用该哈希值生成主题图片。若要启用这些参数,你只需在图片请求中添加上d=参数,并将参数值设置为下列值即可:

  • 404: 不载入任何头像。如果电子邮件地址哈希值没有对应的图像,则返回404响应(文件没有找到)

  • mm: 简约、卡通风格的人物轮廓像(不会随邮箱哈希值变化而变化)。

  • identicon:几何图案,其形状会随电子邮箱哈希值变化而变化。

  • monsterid:程序生成的“怪兽”头像,颜色和面孔会随会随电子邮箱哈希值变化而变化。

  • wavatar::用不同面容和背景组合生成的面孔头像。

  • retro:程序生成的8位街机像素头像。

如果你需要使用自己的默认头像(可能是Logo等图片),你可以在图片链接后面的d=或者default=参数中指定你自己默认图片的URL地址。这个URL链接需要进行URL编码,确保传输的正确性。

全球通用头像Gravatar的介绍

如何在PHP中对字符串进行URL编码,你可以参看下面这行代码:

echo urlencode( ‘http://example.com/images/avatar.jpg’ );

当你指定了默认的头像时,Gravatar在电子邮箱哈希值没有对应的头像时会显示你指定的默认头像。

除了可以设置默认的头像外,Gravatar还提供一系列的内置参数选项作为默认值。这类内置参数选项会接受电子邮箱地址的哈希值,并使用该哈希值生成主题图片。若要启用这些参数,你只需在图片请求中添加上d=参数,并将参数值设置为下列值即可:

404: 不载入任何头像。如果电子邮件地址哈希值没有对应的图像,则返回404响应(文件没有找到)

mm: 简约、卡通风格的人物轮廓像(不会随邮箱哈希值变化而变化)。

identicon:几何图案,其形状会随电子邮箱哈希值变化而变化。

monsterid:程序生成的“怪兽”头像,颜色和面孔会随会随电子邮箱哈希值变化而变化。

wavatar::用不同面容和背景组合生成的面孔头像。

retro:程序生成的8位街机像素头像。

出于某些原因,你可能需要强制显示默认头像。这时你可使用f=或forcedefault=参数,并将参数值设置为y。

http://www.gravatar.com/avatar/205e460b479e2e5b48aec07710c08d50?f=y

Gravatar允许用户自行对头像分级,表明头像是否适合特定的受众群。只有G级的头像是默认显示的,除非希望看到更高分级的头像。你可以使用r=或rating=参数,指定参数,请求特定分级的头像。若要允许G或者PG级别的头像,可以参照下面实例设置。

http://www.gravatar.com/avatar/205e460b479e2e5b48aec07710c08d50?r=pg

你可以混用上述所有参数,以生成复杂的请求。比如下面这个URL请求的是200像素大小,分级为G或者PG级的Gravatar头像,如果对应的邮箱哈希值没有头像,则默认返回404响应。

http://www.gravatar.com/avatar/205e460b479e2e5b48aec07710c08d50?s=200&r=pg&d=404

如果你需要在SSL传输的页面上显示Gravatar头像(比如HTTPS开头的URL页面),你希望Gravatar也是通过SSL传输的,若不这样,你会看到浏览器提示烦人的安全警告。若要进行安全请求,只需将Gravatar请求链接换成下面这样开头的链接即可。https://secure.gravatar.com/…除此之外,一切照旧,你只需确保URL开头跟上面一样即可。

最后推荐 一个卡通头像制的站点 http://www.faceyourmanga.com/

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Laravel의 플래시 세션 데이터로 작업합니다 Laravel의 플래시 세션 데이터로 작업합니다 Mar 12, 2025 pm 05:08 PM

Laravel은 직관적 인 플래시 방법을 사용하여 임시 세션 데이터 처리를 단순화합니다. 응용 프로그램에 간단한 메시지, 경고 또는 알림을 표시하는 데 적합합니다. 데이터는 기본적으로 후속 요청에만 지속됩니다. $ 요청-

PHP 로깅 : PHP 로그 분석을위한 모범 사례 PHP 로깅 : PHP 로그 분석을위한 모범 사례 Mar 10, 2025 pm 02:32 PM

PHP 로깅은 웹 애플리케이션을 모니터링하고 디버깅하고 중요한 이벤트, 오류 및 런타임 동작을 캡처하는 데 필수적입니다. 시스템 성능에 대한 귀중한 통찰력을 제공하고 문제를 식별하며 더 빠른 문제 해결을 지원합니다.

PHP의 컬 : REST API에서 PHP Curl Extension 사용 방법 PHP의 컬 : REST API에서 PHP Curl Extension 사용 방법 Mar 14, 2025 am 11:42 AM

PHP 클라이언트 URL (CURL) 확장자는 개발자를위한 강력한 도구이며 원격 서버 및 REST API와의 원활한 상호 작용을 가능하게합니다. PHP CURL은 존경받는 다중 프로모토콜 파일 전송 라이브러리 인 Libcurl을 활용하여 효율적인 execu를 용이하게합니다.

Laravel 테스트에서 단순화 된 HTTP 응답 조롱 Laravel 테스트에서 단순화 된 HTTP 응답 조롱 Mar 12, 2025 pm 05:09 PM

Laravel은 간결한 HTTP 응답 시뮬레이션 구문을 제공하여 HTTP 상호 작용 테스트를 단순화합니다. 이 접근법은 테스트 시뮬레이션을보다 직관적으로 만들면서 코드 중복성을 크게 줄입니다. 기본 구현은 다양한 응답 유형 단축키를 제공합니다. Illuminate \ support \ Facades \ http를 사용하십시오. http :: 가짜 ([ 'google.com'=> ​​'Hello World', 'github.com'=> ​​[ 'foo'=> 'bar'], 'forge.laravel.com'=>

Codecanyon에서 12 개의 최고의 PHP 채팅 스크립트 Codecanyon에서 12 개의 최고의 PHP 채팅 스크립트 Mar 13, 2025 pm 12:08 PM

고객의 가장 긴급한 문제에 실시간 인스턴트 솔루션을 제공하고 싶습니까? 라이브 채팅을 통해 고객과 실시간 대화를 나누고 문제를 즉시 해결할 수 있습니다. 그것은 당신이 당신의 관습에 더 빠른 서비스를 제공 할 수 있도록합니다.

PHP에서 늦은 정적 결합의 개념을 설명하십시오. PHP에서 늦은 정적 결합의 개념을 설명하십시오. Mar 21, 2025 pm 01:33 PM

기사는 PHP 5.3에 도입 된 PHP의 LSB (Late STATIC BING)에 대해 논의하여 정적 방법의 런타임 해상도가보다 유연한 상속을 요구할 수있게한다. LSB의 실제 응용 프로그램 및 잠재적 성능

프레임 워크 사용자 정의/확장 : 사용자 정의 기능을 추가하는 방법. 프레임 워크 사용자 정의/확장 : 사용자 정의 기능을 추가하는 방법. Mar 28, 2025 pm 05:12 PM

이 기사에서는 프레임 워크에 사용자 정의 기능 추가, 아키텍처 이해, 확장 지점 식별 및 통합 및 디버깅을위한 모범 사례에 중점을 둡니다.

See all articles