1. Chức năng của hàm uniqid()
Hàm uniqid() trong PHP có chức năng tạo ra một chuỗi ký tự duy nhất dựa vào thời gian hiện tại tính theo micro giây. Chuỗi ký tự được tạo ra thường dùng làm định danh duy nhất (unique ID), có thể dùng làm khóa chính trong cơ sở dữ liệu.
2. Cú pháp của hàm uniqid()
uniqid(string $prefix = "", bool $more_entropy = false): string
Trong đó:
$prefix
: tham số tùy chọn. Chuỗi unique ID được tạo ra được nối thêm chuỗi ký tự$prefix
phía trước. Nếu tham số$prefix
rỗng và$more_entropy
làfalse
thì chuỗi trả về sẽ có 13 ký tự.$more_entropy
: tham số tùy chọn. Mặc định làfalse
. Nếu$more_entropy
làtrue
thì chuỗi unique ID trả về sẽ có 23 ký tự, tăng khả năng chuỗi trả về là chuỗi duy nhất.- Kiểu trả về là chuỗi ký tự duy nhất theo thời gian.
Lưu ý: Hàm uniqid()
trong PHP không đảm bảo 100% sẽ tạo ra chuỗi unique ID duy nhất. Trong trường hợp các tiến trình (process) hoặc tiểu trình (thread) chạy hàm uniqid()
cùng lúc thì chuỗi trả về có thể giống nhau (không là duy nhất) nhưng rất hiếm khi xảy ra.
3. Một số ví dụ sử dụng hàm uniqid()
Chạy hàm uniqid() không có $prefix
$id1 = uniqid();//615aceaa9e2ce
$id2 = uniqid();//615aceaa9e2e4
//hoặc
$id1 = uniqid('', false);//615acefd5bc13
//hoặc
$id1 = uniqid('', true);//615acf1d9f5bb2.49697029
Chạy hàm
uniqid() có $prefix
$id1 = uniqid('gochocit_');//gochocit_615acf5d3362e
//hoặc
$id1 = uniqid('gochocit_',false);//gochocit_615acf7def0c4
//hoặc
$id1 = uniqid('gochocit_',true);//gochocit_615acf99e4f6d9.00998831
Trong PHP, bạn có thể sử dụng những hàm như random_int(), random_bytes() hoặc openssl_random_pseudo_bytes() để thay cho uniqid(). Những hàm này giúp bạn tạo những mật mã an toàn ngẫu nhiên có tính duy nhất được đảm bảo hơn hàm uniqid() trong PHP.
Spot on with this write-up, I really think this website wants far more consideration. I’ll in all probability be again to learn rather more, thanks for that info.
Your way of telling all in this paragraph is
really fastidious, every one be able to without difficulty
be aware of it, Thanks a lot.
Thanks for your comment.