CodeIgniter4 藉由地址 email 取得用戶的頭像



使用Gravatar來藉由電子郵件獲取用戶的頭像。Gravatar是一個全球公認的頭像服務,允許用戶在各個網站上使用相同的頭像。以下是如何在CodeIgniter 4中使用Gravatar的方法:


首先,請確保已安裝CodeIgniter 4。接下來,按照以下步驟操作:


創建一個用於處理Gravatar的helper函數。在app/Helpers目錄下創建一個名為gravatar_helper.php的文件,並加入以下代碼:


<?php

if (!function_exists('get_gravatar')) {

    function get_gravatar($email, $size = 80, $default_image = 'mp', $rating = 'g')

    {

        $url = 'https://www.gravatar.com/avatar/';

        $url .= md5(strtolower(trim($email)));

        $url .= "?s=$size&d=$default_image&r=$rating";

        return $url;

    }

}


這個get_gravatar函數接受以下參數:


$email:用戶的電子郵件地址。

$size:頭像的尺寸(以像素為單位),默認為80x80。

$default_image:如果用戶未設置頭像,將顯示的默認圖像類型,默認為'mp'。

$rating:允許顯示的頭像評級,默認為'g'。


在需要使用get_gravatar函數的控制器中,引入剛剛建立的helper函數。在控制器的__construct方法中添加以下代碼:

helper('gravatar');

在控制器中調用get_gravatar函數,並將電子郵件地址作為參數傳遞。例如:

$email = 'user@example.com';
$gravatar_url = get_gravatar($email);


在視圖文件中,使用<img>標籤顯示頭像,如下所示:

<img src="<?= $gravatar_url ?>" alt="User Avatar">

這樣,就可以通過用戶的電子郵件地址獲取並顯示他們的Gravatar頭像了。注意,此方法需要用戶在Gravatar官網上使用相同的電子郵件地址註冊並設置頭像。

留言