Hướng dẫn generate 4 digit unique id in php - tạo id duy nhất 4 chữ số trong php

Chào các cậu

Trong blog này, tôi sẽ cho bạn biết cách tạo 4 chữ số số ngẫu nhiên duy nhất. Chúng tôi là hàm ngẫu nhiên sử dụng trong PHP để tạo 4 số ngẫu nhiên. Bạn có thể dễ dàng tạo 4 chữ số ngẫu nhiên duy nhất trong PHP.

Chúng tôi hiển thị tạo 4 chữ số Ví dụ số ngẫu nhiên duy nhất. Bạn có thể tạo số ngẫu nhiên bốn chữ số trong PHP.

Tôi sẽ hiển thị hai hàm khác nhau để tạo 4 số ngẫu nhiên. Trước khi tạo 4 số ngẫu nhiên duy nhất cho hàm mt_rand () và thứ hai tạo 4 số ngẫu nhiên duy nhất cho chức năng rand ().

Ở đây ví dụ sau đây của các số ngẫu nhiên duy nhất tạo 4 chữ số

ví dụ 1

Ở đây, hàm MT_RAND ()

$fourRandomDigit = mt_rand(1000,9999);

echo $fourRandomDigit;

?>

Ví dụ 2

Ở đây hàm ví dụ Rand () sử dụng các số ngẫu nhiên duy nhất tạo 4 chữ số

$fourRandomDigit = rand(1000,9999);

echo $fourRandomDigit;

?>

Nó sẽ giúp bạn..

#PHPPHP

Thích bài viết này? Theo dõi tôi trên Twitter và Facebook. Bạn cũng có thể đăng ký nguồn cấp dữ liệu RSS.

82

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Tôi cần tạo một số ngẫu nhiên với x số lượng chữ số.

Vì vậy, hãy nói x là 5, tôi cần một số để được ví dụ. 35562 Nếu x là 3, thì nó sẽ ném lại một cái gì đó giống như; 463

Ai đó có thể cho tôi thấy điều này được thực hiện như thế nào?

Đã hỏi ngày 21 tháng 11 năm 2011 lúc 17:35Nov 21, 2011 at 17:35

user1022585user1022585user1022585

12.6K19 Huy hiệu vàng53 Huy hiệu bạc74 Huy hiệu đồng19 gold badges53 silver badges74 bronze badges

0

Bạn có thể sử dụng

$digits = 3;
echo rand(pow(10, $digits-1), pow(10, $digits)-1);
5 cùng với
$digits = 3;
echo rand(pow(10, $digits-1), pow(10, $digits)-1);
6 để thực hiện điều này:

$digits = 3;
echo rand(pow(10, $digits-1), pow(10, $digits)-1);

Điều này sẽ xuất ra một số từ 100 đến 999. Điều này bởi vì 10^2 = 100 và 10^3 = 1000 và sau đó bạn cần trừ nó với một để có được nó trong phạm vi mong muốn.

Nếu 005 cũng là một ví dụ hợp lệ, bạn sẽ sử dụng mã sau để đệm nó bằng các số 0 hàng đầu:

$digits = 3;
echo str_pad(rand(0, pow(10, $digits)-1), $digits, '0', STR_PAD_LEFT);

Đã trả lời ngày 21 tháng 11 năm 2011 lúc 17:38Nov 21, 2011 at 17:38

Hướng dẫn generate 4 digit unique id in php - tạo id duy nhất 4 chữ số trong php

3

Dưới đây là một giải pháp đơn giản mà không có bất kỳ vòng lặp hoặc bất kỳ rắc rối nào cho phép bạn tạo chuỗi ngẫu nhiên với các ký tự, số hoặc thậm chí với các ký hiệu đặc biệt.

$digits = 3;
echo rand(pow(10, $digits-1), pow(10, $digits)-1);
7

trong đó

$digits = 3;
echo rand(pow(10, $digits-1), pow(10, $digits)-1);
8 có thể là số chữ số

Ví dụ.

$digits = 3;
echo rand(pow(10, $digits-1), pow(10, $digits)-1);
9

Kết quả sau một vài vụ hành quyết

98450
79324
23017
04317
26479

Bạn cũng có thể sử dụng cùng một mã để tạo chuỗi ngẫu nhiên, như thế này

$randomNum=substr(str_shuffle("0123456789abcdefghijklmnopqrstvwxyzABCDEFGHIJKLMNOPQRSTVWXYZ"), 0, $x);

Kết quả với

$digits = 3;
echo str_pad(rand(0, pow(10, $digits)-1), $digits, '0', STR_PAD_LEFT);
0

FgHmqpTR3Ox
O9BsNgcPJDb
1v8Aw5b6H7f
haH40dmAxZf
0EpvHL5lTKr

Đã trả lời ngày 13 tháng 6 năm 2017 lúc 13:56Jun 13, 2017 at 13:56

Hướng dẫn generate 4 digit unique id in php - tạo id duy nhất 4 chữ số trong php

Akshay Khaleakshay KhaleAkshay Khale

7.8818 Huy hiệu vàng49 Huy hiệu bạc58 Huy hiệu Đồng8 gold badges49 silver badges58 bronze badges

2

Bạn có thể sử dụng

$digits = 3;
echo str_pad(rand(0, pow(10, $digits)-1), $digits, '0', STR_PAD_LEFT);
1 cho mục đích chính xác đó.

Để giới hạn các giá trị đối với các giá trị với các chữ số X, bạn có thể sử dụng các mục sau:

$x = 3; // Amount of digits
$min = pow(10,$x);
$max = pow(10,$x+1)-1);
$value = rand($min, $max);

Đã trả lời ngày 21 tháng 11 năm 2011 lúc 17:37Nov 21, 2011 at 17:37

Halfanhalfdanhalfdan

32,8K8 Huy hiệu vàng76 Huy hiệu bạc86 Huy hiệu Đồng8 gold badges76 silver badges86 bronze badges

3

Đối xử với số của bạn như một danh sách các chữ số và chỉ nối một chữ số ngẫu nhiên mỗi lần:

function n_digit_random($digits) {
  $temp = "";

  for ($i = 0; $i < $digits; $i++) {
    $temp .= rand(0, 9);
  }

  return (int)$temp;
}

Hoặc một giải pháp số hoàn toàn:

function n_digit_random($digits)
  return rand(pow(10, $digits - 1) - 1, pow(10, $digits) - 1);
}

Đã trả lời ngày 21 tháng 11 năm 2011 lúc 17:37Nov 21, 2011 at 17:37

HalfanhalfdanBlender

32,8K8 Huy hiệu vàng76 Huy hiệu bạc86 Huy hiệu Đồng52 gold badges429 silver badges487 bronze badges

Đối xử với số của bạn như một danh sách các chữ số và chỉ nối một chữ số ngẫu nhiên mỗi lần:

$fourRandomDigit = rand(1000,9999);

echo $fourRandomDigit;

?>

0

Hoặc một giải pháp số hoàn toàn:0 to 999.

BlenderBlender5 digits.

281K52 Huy hiệu vàng429 Huy hiệu bạc487 Huy hiệu đồngMay 30, 2015 at 14:19

1

$fourRandomDigit = rand(1000,9999);

echo $fourRandomDigit;

?>

1

Cách đơn giản nhất tôi có thể nghĩ đến là sử dụng chức năng

$digits = 3;
echo str_pad(rand(0, pow(10, $digits)-1), $digits, '0', STR_PAD_LEFT);
2 với
$digits = 3;
echo str_pad(rand(0, pow(10, $digits)-1), $digits, '0', STR_PAD_LEFT);
3

Trong ví dụ trên, nó sẽ tạo ra số ngẫu nhiên trong phạm vi 0 đến 999.Nov 21, 2011 at 17:40

Hướng dẫn generate 4 digit unique id in php - tạo id duy nhất 4 chữ số trong php

Và có 5 chữ số.animuson

Đã trả lời ngày 30 tháng 5 năm 2015 lúc 14:1928 gold badges139 silver badges145 bronze badges

4

Đã thử nghiệm ở đây.

benchmark:

$fourRandomDigit = rand(1000,9999);

echo $fourRandomDigit;

?>

2

Đã trả lời ngày 21 tháng 11 năm 2011 lúc 17:40

Animuson ♦ AnimusonFeb 21, 2017 at 16:36

52.8K28 Huy hiệu vàng139 Huy hiệu bạc145 Huy hiệu đồngAlex

$digits = 3;
echo str_pad(rand(0, pow(10, $digits)-1), $digits, '0', STR_PAD_LEFT);
4 hoạt động nhanh hơn x4 lần
$digits = 3;
echo str_pad(rand(0, pow(10, $digits)-1), $digits, '0', STR_PAD_LEFT);
54 silver badges9 bronze badges

1

Cả hai chức năng đều chạy trong 100000 lần lặp để làm cho kết quả rõ ràng hơn

$fourRandomDigit = rand(1000,9999);

echo $fourRandomDigit;

?>

3

Đã trả lời ngày 21 tháng 2 năm 2017 lúc 16:36Jun 19, 2019 at 11:22

AlexalexAnoop P S

3414 Huy hiệu bạc9 Huy hiệu đồng1 gold badge11 silver badges30 bronze badges

Vâng, bạn có thể sử dụng làm chức năng PHP đơn giản MT_RAND (2000,9000) có thể tạo số ngẫu nhiên 4 chữ số

$fourRandomDigit = rand(1000,9999);

echo $fourRandomDigit;

?>

4

Đã trả lời ngày 19 tháng 6 năm 2019 lúc 11:22Nov 21, 2011 at 17:39

Anoop p sanoop p sRene Pot

7041 Huy hiệu vàng11 Huy hiệu bạc 30 Huy hiệu Đồng7 gold badges67 silver badges91 bronze badges

0

Làm điều đó với một vòng lặp:

usage:

$fourRandomDigit = rand(1000,9999);

echo $fourRandomDigit;

?>

5

Trong ví dụ trên, nó sẽ tạo ra số ngẫu nhiên trong phạm vi 0 đến 999.Nov 21, 2011 at 17:40

Và có 5 chữ số.easyb

Đã trả lời ngày 30 tháng 5 năm 2015 lúc 14:191 silver badge8 bronze badges

1

$fourRandomDigit = rand(1000,9999);

echo $fourRandomDigit;

?>

6

Đã thử nghiệm ở đây.Mar 30, 2016 at 8:26

Hướng dẫn generate 4 digit unique id in php - tạo id duy nhất 4 chữ số trong php

1

Đã trả lời ngày 21 tháng 11 năm 2011 lúc 17:40

Animuson ♦ Animuson

52.8K28 Huy hiệu vàng139 Huy hiệu bạc145 Huy hiệu đồng

$digits = 3;
echo str_pad(rand(0, pow(10, $digits)-1), $digits, '0', STR_PAD_LEFT);
4 hoạt động nhanh hơn x4 lần
$digits = 3;
echo str_pad(rand(0, pow(10, $digits)-1), $digits, '0', STR_PAD_LEFT);
5

Cả hai chức năng đều chạy trong 100000 lần lặp để làm cho kết quả rõ ràng hơn

Hướng dẫn generate 4 digit unique id in php - tạo id duy nhất 4 chữ số trong php

Đã trả lời ngày 21 tháng 2 năm 2017 lúc 16:36

Alexalex2 gold badges16 silver badges39 bronze badges

3414 Huy hiệu bạc9 Huy hiệu đồngSep 4, 2019 at 9:43

Hướng dẫn generate 4 digit unique id in php - tạo id duy nhất 4 chữ số trong php

Vâng, bạn có thể sử dụng làm chức năng PHP đơn giản MT_RAND (2000,9000) có thể tạo số ngẫu nhiên 4 chữ số

$fourRandomDigit = rand(1000,9999);

echo $fourRandomDigit;

?>

7

Đã trả lời ngày 19 tháng 6 năm 2019 lúc 11:22May 26, 2020 at 15:46

Anoop p sanoop p s

7041 Huy hiệu vàng11 Huy hiệu bạc 30 Huy hiệu Đồng

Làm điều đó với một vòng lặp:Dec 18, 2014 at 10:08

Hướng dẫn generate 4 digit unique id in php - tạo id duy nhất 4 chữ số trong php

Susantha7Susantha7Susantha7

Đã trả lời ngày 21 tháng 11 năm 2011 lúc 17:391 gold badge18 silver badges36 bronze badges

Rene Potren Pot

$fourRandomDigit = rand(1000,9999);

echo $fourRandomDigit;

?>

9

24.3K7 Huy hiệu vàng67 Huy hiệu bạc91 Huy hiệu Đồng

Đã trả lời ngày 19 tháng 3 năm 2015 lúc 9:37Mar 19, 2015 at 9:37

MrodriguesMrodriguesMRodrigues

1.78716 huy hiệu bạc21 Huy hiệu đồng16 silver badges21 bronze badges

$digits = 3;
echo rand(pow(10, $digits-1), pow(10, $digits)-1);
0

Đã trả lời ngày 18 tháng 2 năm 2017 lúc 15:31Feb 18, 2017 at 15:31

Chức năng này hoạt động hoàn hảo mà không có lặp lại và số chữ số mong muốn.

$digits = 3;
echo rand(pow(10, $digits-1), pow(10, $digits)-1);
1

Bạn có thể gọi chức năng và chuyển số chữ số chẳng hạn: ví dụ:

$digits = 3;
echo rand(pow(10, $digits-1), pow(10, $digits)-1);
2

Kết quả mẫu:

4957 8710 6730 6082 2987 2041 6721

Kịch bản gốc có từ ý chính này

Đã trả lời ngày 29 tháng 7 năm 2018 lúc 9:15Jul 29, 2018 at 9:15

Hướng dẫn generate 4 digit unique id in php - tạo id duy nhất 4 chữ số trong php

Reagan Ochorareagan OchoraReagan Ochora

1.4671 Huy hiệu vàng18 Huy hiệu bạc19 Huy hiệu đồng1 gold badge18 silver badges19 bronze badges

Xin vui lòng không

$digits = 3;
echo rand(pow(10, $digits-1), pow(10, $digits)-1);
5 không tạo ra giá trị an toàn về mặt mật mã theo các tài liệu:

http://php.net/manual/en/function.rand.php

Hàm này không tạo ra các giá trị bảo mật bằng mã hóa và không nên được sử dụng cho mục đích mật mã. Nếu bạn cần một giá trị bảo mật bằng mã hóa, hãy xem xét sử dụng Random_int (), Random_Bytes () hoặc OpenSSL_Random_Pseudo_Bytes () thay thế.

Thay vào đó, tốt hơn là sử dụng

98450
79324
23017
04317
26479
5, có sẵn trên Php 7 (xem: http://php.net/manual/en/function.random-int.php).

Vì vậy, để mở rộng câu trả lời của @Marcus, bạn nên sử dụng:

$digits = 3;
echo rand(pow(10, $digits-1), pow(10, $digits)-1);
3

Lưu ý rằng sử dụng

$digits = 3;
echo rand(pow(10, $digits-1), pow(10, $digits)-1);
5 là tốt nếu bạn không cần một số ngẫu nhiên an toàn.

Đã trả lời ngày 23 tháng 8 năm 2018 lúc 10:10Aug 23, 2018 at 10:10

Yahya Uddinyahya UddinYahya Uddin

24.1K32 Huy hiệu vàng126 Huy hiệu bạc221 Huy hiệu đồng32 gold badges126 silver badges221 bronze badges

5

Mã sau đây tạo số ngẫu nhiên 4 chữ số:

$digits = 3;
echo rand(pow(10, $digits-1), pow(10, $digits)-1);
4

Đã trả lời ngày 12 tháng 1 năm 2020 lúc 18:40Jan 12, 2020 at 18:40

Hướng dẫn generate 4 digit unique id in php - tạo id duy nhất 4 chữ số trong php

1

Bạn thực sự thích làm phức tạp mọi thứ :)

Vấn đề thực sự là OP muốn, có lẽ, thêm vào đó vào cuối một số con số thực sự lớn. Nếu không, tôi không cần phải nghĩ đến điều đó. vì số không bên trái trong bất kỳ số nào là, tốt, các số 0 trái.

Vì vậy, chỉ cần nối phần lớn hơn của số đó dưới dạng tổng toán học chứ không phải chuỗi.

e.g.

98450
79324
23017
04317
26479
7

đơn giản là trở thành

98450
79324
23017
04317
26479
8

done.

Đã trả lời ngày 2 tháng 4 năm 2014 lúc 23:03Apr 2, 2014 at 23:03

GCBGCBgcb

13.4K7 Huy hiệu vàng67 Huy hiệu bạc90 Huy hiệu Đồng7 gold badges67 silver badges90 bronze badges

1

Làm thế nào để tạo số 4 chữ số trong PHP?

Các hàm rand () hoặc mt_rand () có thể được sử dụng để tạo số ngẫu nhiên 4 chữ số trong PHP. can be used to Generate 4 Digit Random Number in PHP.

Làm thế nào để tạo số duy nhất trong PHP?

Hàm uniqid () tạo ra một id duy nhất dựa trên microtime (thời gian hiện tại tính bằng micro giây).Lưu ý: ID được tạo từ hàm này không đảm bảo tính duy nhất của giá trị trả về!Để tạo ra một cực kỳ khó dự đoán ID, hãy sử dụng hàm md5 (). generates a unique ID based on the microtime (the current time in microseconds). Note: The generated ID from this function does not guarantee uniqueness of the return value! To generate an extremely difficult to predict ID, use the md5() function.

Làm cách nào để tạo số 6 chữ số ngẫu nhiên trong PHP?

Hàm Rand () được sử dụng để tạo số ngẫu nhiên trong PHP.Nó cũng có thể được sử dụng để tạo một số ngẫu nhiên trong một phạm vi cụ thể (ví dụ: số từ 10 đến 30.) is used to generate a random number in PHP. It can also be used to generate a random number within a specific range (for example a number between 10 and 30.)

Hàm MT_RAND trong PHP là gì?

Định nghĩa và cách sử dụng.Hàm mt_rand () tạo ra một số nguyên ngẫu nhiên bằng thuật toán twister mersenne.Mẹo ví dụ: Nếu bạn muốn một số nguyên ngẫu nhiên trong khoảng từ 10 đến 100 (bao gồm), hãy sử dụng MT_RAND (10.100).generates a random integer using the Mersenne Twister algorithm. Example tip: If you want a random integer between 10 and 100 (inclusive), use mt_rand (10,100).