• پنهان کردن آدرس ایمیل در php

شاید در برخی از سایت های دیده باشید که آدرس ایمیل به صورت خاصی با تعدادی کاراکتر نوشته می شود. یعنی شما همه آدرس ایمیل را نمی بینید بلکه بخشی از آدرس ایمیل را می بینید که اینکار هم به جهت لو نرفتن آدرس دقیق ایمیل هست و هم اینکه ربات ها نتوانند آدرس شمارا پیدا کرده و اسپم برای شما ارسال کنند.
در گوگل و یاهو و سایر وب میل های معتبر و همچنین شبکه های اجتماعی دقیقا به همین صورت وقتی وارد بخش فراموشی رمز عبور می شوید آدرس ایمیل شمارا مثلا به صورت mr****@***.com قرار می دهند.

با استفاده از 2 تابعی که در زیر نوشته شده براحتی میتوانید چنین خاصیتی را در کدهای خودتان قرار دهید.
 

function hideEmailAddress($email)
{
if(filter_var($email, FILTER_VALIDATE_EMAIL))
{
list($first, $last) = explode('@', $email);
$first = str_replace(substr($first, '3'), str_repeat('*', strlen($first)-3), $first);
$last = explode('.', $last);
$last_domain = str_replace(substr($last['0'], '1'), str_repeat('*', strlen($last['0'])-1), $last['0']);
$hideEmailAddress = $first.'@'.$last_domain.'.'.$last['1'];
return $hideEmailAddress;
}
}
$email = "itsolutionstuff@gmail.com";
echo hideEmailAddress($email);

خروجی کد بالا به صورت زیر خواهد بود

its************@g****.com

 

و یا میتوانید از نمونه کد زیر استفاده کنید:

function hideEmailAddress($email)
{
    $em   = explode("@",$email);
    $name = implode(array_slice($em, 0, count($em)-1), '@');
    $len  = floor(strlen($name)/2);
    return substr($name,0, $len) . str_repeat('*', $len) . "@" . end($em);   
}
$email = 'itsolutionstuff@gmail.com';
echo hideEmailAddress($email);

خروجی کد بالا به صورت زیر خواهد بود

	itsolut*******@gmail.com 

 

امیدوارم این آموزش به کارتون بیاد و بتونید ازش استفاده کنید.

نویسنده:حامی تیموری


تاریخ ثبت: ۱۳۹۹,۰۹,۲۸
بازدید: 3352
این مطلب را به اشتراک بگذارید cloob  twitter  stumbleupon  linkedin  Facebook