محمد
2 سال پیش توسط محمد مطرح شد
12 پاسخ

حذف کردن جیمیل دات کام از نام کاربری

سلام‌ کدی هست بزارم تو فانکشن که  اگه کاربری نام کاربریش جیمیلش باشه از@gmail.com حذف بشه به صورت خودکار
مثلان اگه نام کاربریش این باشه 

mohammad0@gmail.com

نام کاربریش خودکار بشه این 
mohammad1800

یعنی میخوام از @gmail.com حدف بشه

ممنون میشم کمکم کنید 


ثبت پرسش جدید
محمد مهدی ملک پور
@mohamahdimp 2 سال پیش مطرح شد
0

دوست عزیز می‌تونید از regex استفاده کنید و بگید بعد از @ هرچی بود رو حذف کنه.


محمد
@mohammadafrozei1395 2 سال پیش مطرح شد
0

سلام میشه کدشو بهم بدی بزارم فانکشن سایتم که خودکار حذف بشه


سیدعلی موسوی
تخصص : سی شارپ و پی اچ پی
@juza66 2 سال پیش آپدیت شد
1

دو راه حل دارید ، یکی اگر مطمئن هستید فقط @gmail.com میخواین حذف بشه از استرینگ ریپلیس استفاده کنید

str_replace('@gmail.com', ' ', $str);

در غیر اینصورت اگر از @ تا آخر رو میخواید از استرینگ بردارید از ریجکس باید استفاده کنید

$pattern = "/[a-zA-Z]*[:\/\/]*[A-Za-z0-9\-_]+\.+[A-Za-z0-9\.\/%&=\?\-_]+/i";
preg_replace($pattern, '', 'juza666@ymail.com');

محمد
@mohammadafrozei1395 2 سال پیش مطرح شد
0

سلام اینو چطوری بزارم تو فانکشن سایتم؟ میشخ کاملش کنید اگه میشه


Reza
تخصص : برنامه نویس وب
@Rezanp7 2 سال پیش مطرح شد
0

سلام
هرجایی که میخواید نام کاربری یوزر رو ثبت کنید جمیلیش رو بگیرید و بریزید توی یه متغییر و پاس بدید به regex که دوستمون دادن
اگرم موقع ثبت نام یوزرنیم کاربر رو ست میکنید کافیه ایمیلی که کاربر از طریق input وارد میکنه رو بگیرید و پاس بدید به این Regex و مقدار نهایی رو برای یوزرنیم کاربر در نظر بگیرید


محمد
@mohammadafrozei1395 2 سال پیش مطرح شد
0

نمیدونم چطوریه این😔😔


رضا جهانگیر
تخصص : Full-Stack Developer
@rezajahangir 2 سال پیش مطرح شد
1

سلام به شمادوست عزیز.
دوست عزیزمون آقای @juza66 توضیح دادن که باید چیکار کنید ولی من توضیحاتشونو کامل تر میکنم.
شما اول باید به صورت زیر ایمیل کاربر رو بگیرید و داخل یه متغییر بریزید:

$user_name = auth()->user()->email

بعد این متغییر رو به صورت زیر بدین به str_replace:

str_replace('@gmail.com', ' ', $user_name);

موفق باشید.


محمد
@mohammadafrozei1395 2 سال پیش مطرح شد
0

سلام من اصلان هیچی از کد نویسی بلد نیستم میشه یه جوری کاملش کنید بزارمش تو فانکشن قالبم


میکائیل
تخصص : برنامه نویسی سمت سرور و کلاینت
@FullStack 2 سال پیش آپدیت شد
0

سلام دوست عزیز شما میتونین با استفاده از فانکشن explode() ایمیل کاربر رو با @به دو بخش تقسیم کنید قبل از @ میشه میشه نام کاربری کاربر و بعد از @ میشه حالا هرچی که هست gmail.com یا yahoo.com فرقی نداره . و اینارو میریزی تو یه متغییر بعد میتونی به صورت ارایه بهشون دسترسی داشته باشی مثلا

$username = explode('@',$email);

بعد توی این $username یه ارایه ذخیره میشه که دو بخش داده 0 و 1 که بخش 0 میشه همون یورزنیم و بخش1 میشه ادرس ایمیلش که بعد از @ هست هرجا که خواستی میتونی به این طریق صدا بزنی

$username[0]

و تمام


محمد
@mohammadafrozei1395 2 سال پیش آپدیت شد
0

سلام اینجوری درسته یا نه

add_filter( 'sanitize_user', 'remove_whitespace_from_username', 10, 3 );
function remove_whitespace_from_username( $username, $raw_username, $strict  ){
    $username = preg_replace('@gmail.com', ' ', $username);
    return $username;
}

محمد
@mohammadafrozei1395 2 سال پیش مطرح شد
0

اینجوری یا نه


محمد
@mohammadafrozei1395 2 سال پیش مطرح شد
0

سلام میشه کمکم کنی @mohamahdimp @juza66 @Rezanp7 @rezajahangir @mikaiil

اینجوری یعنی

add_filter( 'sanitize_user', 'remove_whitespace_from_username', 10, 3 );
function remove_whitespace_from_username( $username, $raw_username, $strict  ){
    $username = preg_replace('@gmail.com', ' ', $username);
    return $username;
}

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام