Tạo tên người dùng từ tên và họ của người dùng – PHP
PHP
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
//generate a username from Full name
function generate_username[$string_name="Mike Tyson", $rand_no = 200]{
$username_parts = array_filter[explode[" ", strtolower[$string_name]]]; //explode and lowercase name
$username_parts = array_slice[$username_parts, 0, 2]; //return only first two arry part
$part1 = [!empty[$username_parts[0]]]?substr[$username_parts[0], 0,8]:""; //cut first name to 8 letters
$part2 = [!empty[$username_parts[1]]]?substr[$username_parts[1], 0,5]:""; //cut second name to 5 letters
$part3 = [$rand_no]?rand[0, $rand_no]:"";
$username = $part1. str_shuffle[$part2]. $part3; //str_shuffle to randomly shuffle all characters
return $username;
}
//usage
echo generate_username["Mike Tyson", 10];
Tạo tên người dùng duy nhất với MySqli
Bây giờ chúng tôi biết cách tạo tên người dùng, nhưng nếu tên người dùng đã tồn tại trong cơ sở dữ liệu thì sao, nó có thể dẫn đến tên người dùng trùng lặp, điều này có thể gây ra kết quả không mong muốn và chúng tôi chắc chắn không muốn điều đó. Vì vậy, trong ví dụ tiếp theo, chúng tôi sẽ tạo tên người dùng nhưng lần này chúng tôi cũng kiểm tra tên người dùng hiện có trong cơ sở dữ liệu để biết tính duy nhấtPHP
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
//Generate a unique username using Database
function generate_unique_username[$string_name="Mike Tyson", $rand_no = 200]{
while[true]{
$username_parts = array_filter[explode[" ", strtolower[$string_name]]]; //explode and lowercase name
$username_parts = array_slice[$username_parts, 0, 2]; //return only first two arry part
$part1 = [!empty[$username_parts[0]]]?substr[$username_parts[0], 0,8]:""; //cut first name to 8 letters
$part2 = [!empty[$username_parts[1]]]?substr[$username_parts[1], 0,5]:""; //cut second name to 5 letters
$part3 = [$rand_no]?rand[0, $rand_no]:"";
$username = $part1. str_shuffle[$part2]. $part3; //str_shuffle to randomly shuffle all characters
$username_exist_in_db = username_exist_in_database[$username]; //check username in database
if[!$username_exist_in_db]{
return $username;
}
}
}
function username_exist_in_database[$username]{
$mysqli = new mysqli['localhost','mysql_username','password','databasename']; //connect to database
if [$mysqli->connect_error] {
die['Error : ['. $mysqli->connect_errno .'] '. $mysqli->connect_error];
}
$statement = $mysqli->prepare["SELECT id FROM users WHERE username =?"];
$statement->bind_param['s', $username];
if[$statement->execute[]]{
$statement->store_result[];
return $statement->num_rows;
}
}
//usage
echo generate_unique_username["Mike Tyson", 10];
Tôi hy vọng mã PHP này sẽ phục vụ mục đích của bạn và tôi muốn thấy một số cải tiến, vui lòng làm như vậy bằng cách nhận xét trong phần bình luận bên dưới Gói tạo tên người dùng duy nhất từ email hoặc danh từ và tính từ được chọn ngẫu nhiên. Người dùng có thể thêm dấu phân cách giữa tên người dùng, xác định độ dài tối đa của tên người dùng và thêm tối đa sáu chữ số ngẫu nhiên
Cài đặt
npm install unique-username-generator --save
- nhập khẩu
// Using Node.js `require[]` const { generateFromEmail, generateUsername } = require["unique-username-generator"]; // Using ES6 imports import { generateFromEmail, generateUsername } from "unique-username-generator";
Cách sử dụng
Tạo tên người dùng từ email
Nó sẽ tạo tên người dùng từ email và thêm tối đa sáu chữ số ngẫu nhiên vào cuối tên
// add three random digits const username = generateFromEmail[ "lakshmi.narayan@example.com", 3 ]; console.log[username]; // lakshminarayan234 // add four random digits const username = generateFromEmail[ "lakshmi.narayan@example.com", 4 ]; console.log[username]; // lakshminarayan2347
Tạo ngẫu nhiên tên người dùng duy nhất
Nó sẽ tạo tên người dùng duy nhất từ tính từ, danh từ, chữ số ngẫu nhiên và dấu phân cách. Bạn có thể kiểm soát các tham số sau - dấu phân cách, số chữ số ngẫu nhiên và độ dài tối đa của tên người dùng
// generaterUsername[separator, number of random digits, maximum length] // Without any parameter const username = generateUsername[]; console.log[username]; // blossomlogistical // With any separator like "-, _" const username = generateUsername["-"]; console.log[username]; // blossom-logistical // With random digits and no separator const username = generateUsername["", 3]; console.log[username]; // blossomlogistical732 // With maximum length constraint and no separator, no random digits const username = generateUsername["", 0, 15]; console.log[username]; // blossomlogistic // With maximum length constraint and separator but no random digits const username = generateUsername["-", 0, 15]; console.log[username]; // blossom-logisti // With maximum length constraint and random digits but no separator const username = generateUsername["", 2, 19]; console.log[username]; // blossomlogistical73 // With all parameters const username = generateUsername["-", 2, 20]; console.log[username]; // blossom-logistical73
từ điển mặc định
Theo mặc định, thư viện trình tạo tên người dùng duy nhất đi kèm với 2 từ điển sẵn có để bạn có thể sử dụng chúng ngay lập tức
Cú pháp mới để sử dụng từ điển mặc định như sau
import { uniqueUsernameGenerator, Config, adjectives, nouns } from 'unique-username-generator'; const config: Config = { dictionaries: [adjectives, nouns] } const username: string = uniqueUsernameGenerator[config]; // blossomlogistical
Từ điển tùy chỉnh
Bạn có thể muốn cung cấp từ điển tùy chỉnh của mình để sử dụng để tạo tên người dùng duy nhất của mình, nhằm đáp ứng yêu cầu dự án của bạn. Bạn có thể dễ dàng làm điều đó bằng cách sử dụng tùy chọn từ điển
import { uniqueUsernameGenerator } from 'unique-username-generator'; const marvelCharacters = [ 'Iron Man', 'Doctor Strange', 'Hulk', 'Captain America', 'Thanos' ]; const config: Config = { dictionaries: [marvelCharacters], separator: '', style: 'capital', randomDigits: 3 } const username: string = uniqueUsernameGenerator[config]; // Hulk123
API
uniqueUsernameGenerator [tùy chọn]
Trả về một string
với tên người dùng được tạo ngẫu nhiên
tùy chọn
Loại. Config
Đối số
//Generate a unique username using Database
function generate_unique_username[$string_name="Mike Tyson", $rand_no = 200]{
while[true]{
$username_parts = array_filter[explode[" ", strtolower[$string_name]]]; //explode and lowercase name
$username_parts = array_slice[$username_parts, 0, 2]; //return only first two arry part
$part1 = [!empty[$username_parts[0]]]?substr[$username_parts[0], 0,8]:""; //cut first name to 8 letters
$part2 = [!empty[$username_parts[1]]]?substr[$username_parts[1], 0,5]:""; //cut second name to 5 letters
$part3 = [$rand_no]?rand[0, $rand_no]:"";
$username = $part1. str_shuffle[$part2]. $part3; //str_shuffle to randomly shuffle all characters
$username_exist_in_db = username_exist_in_database[$username]; //check username in database
if[!$username_exist_in_db]{
return $username;
}
}
}
function username_exist_in_database[$username]{
$mysqli = new mysqli['localhost','mysql_username','password','databasename']; //connect to database
if [$mysqli->connect_error] {
die['Error : ['. $mysqli->connect_errno .'] '. $mysqli->connect_error];
}
$statement = $mysqli->prepare["SELECT id FROM users WHERE username =?"];
$statement->bind_param['s', $username];
if[$statement->execute[]]{
$statement->store_result[];
return $statement->num_rows;
}
}
//usage
echo generate_unique_username["Mike Tyson", 10];
0 chủ yếu tương ứng với các thuộc tính được xác định cho uniqueUsernameGenerator. Chỉ cần có //Generate a unique username using Database
function generate_unique_username[$string_name="Mike Tyson", $rand_no = 200]{
while[true]{
$username_parts = array_filter[explode[" ", strtolower[$string_name]]]; //explode and lowercase name
$username_parts = array_slice[$username_parts, 0, 2]; //return only first two arry part
$part1 = [!empty[$username_parts[0]]]?substr[$username_parts[0], 0,8]:""; //cut first name to 8 letters
$part2 = [!empty[$username_parts[1]]]?substr[$username_parts[1], 0,5]:""; //cut second name to 5 letters
$part3 = [$rand_no]?rand[0, $rand_no]:"";
$username = $part1. str_shuffle[$part2]. $part3; //str_shuffle to randomly shuffle all characters
$username_exist_in_db = username_exist_in_database[$username]; //check username in database
if[!$username_exist_in_db]{
return $username;
}
}
}
function username_exist_in_database[$username]{
$mysqli = new mysqli['localhost','mysql_username','password','databasename']; //connect to database
if [$mysqli->connect_error] {
die['Error : ['. $mysqli->connect_errno .'] '. $mysqli->connect_error];
}
$statement = $mysqli->prepare["SELECT id FROM users WHERE username =?"];
$statement->bind_param['s', $username];
if[$statement->execute[]]{
$statement->store_result[];
return $statement->num_rows;
}
}
//usage
echo generate_unique_username["Mike Tyson", 10];
1