Chào bạn, nếu bạn là thành viên xin đăng nhập (Quên mật khẩu?) nếu chưa bạn có thể đăng ký tài khoản mới.
Thông báo: Thành viên muốn đăng nhập ở trang chủ, vui lòng vào Diễn đàn đăng nhập, sau đó quay lại trang chủ.


Bài viết mới nhất

Tìm kiếm [Nâng cao]

Tạo dãy số và chuỗi ngẫu nhiên

Người gửi: lyhuuloi

21/12/2005, 05:54 pm
Bài viết sẽ hướng dẫn bạn cách tạo dãy số / chuỗi ngẫu nhiên.

Bài viết sẽ hướng dẫn bạn cách tạo dãy số / chuỗi ngẫu nhiên. Mục đích của việc tạo dãy số và chuỗi ngẫu nhiên chủ yếu là xác nhận lại tính trung thực của người truy cập. Tức là nếu người truy cập không sử dụng các công cụ tự động để flood thì họ sẽ dễ dàng thấy và nhập các dãy số / chuỗi nhiên do bạn tạo.

Dĩ nhiên là rất ít hoặc không có các công cụ có đủ thông minh để nhìn ra từng pixel trên dãy số / chuỗi, vì thế mà chức năng này không thể thiếu nếu bạn muốn website được xây dựng an toàn.

I. Dãy số ngẫu nhiên

Cơ bản:

<?php

mt_srand ((double) microtime() * 1000000);
$random_numbers = mt_rand(100000,999999);

print $random_numbers;

?>


Nâng cao:

<?php

function random_numbers( $count = 6 )
{
$start_numbers = 1; // [1]
$end_numbers = 9; // [2]

for ( $i = 1; $i < $count; $i++ )
{
$start_numbers = $start_numbers.$start_numbers; // [3]
$end_numbers = $end_numbers.$end_numbers; // [4]
}

mt_srand ((double) microtime() * $end_numbers);
$random_numbers = mt_rand ( $start_numbers, $end_numbers );

return $random_numbers;

}

print random_numbers(6);

?>


Với số 6 nghĩa là xuất hiện 6 số ngẫu nhiên. Giải thích một vài chi tiết:

[1] Đặt Số nhỏ nhất trong dãy số ngẫu nhiên
[2] Đặt số lớn nhất trong dãy số ngẫu nhiên
[3] Thêm N con số $start_numbers vào phía sau $start_numbers nếu $count bằng N
[4] Thêm N con số $end_numbers vào phía sau $end_numbers nếu $count bằng N


II. Chuỗi ký tự ngẫu nhiên

<?php

function random_character( $count = 6 )
{
$random_char = "";
$char_base = explode( " ", "a b c d e f g h i j k l m n o p q r s t u v w x y z");

for( $i = 0; $i < $count; $i++ )
{
$radom_char = $radom_char.$char_base[rand(9, count($char_base))];
}

return $radom_char;

}

print random_character(6);

?>



III. Dãy số và chuỗi ngẫu nhiên (Nên sử dụng)

<?php

function random_character( $count = 6 )
{
$random_char = "";
$char_base = explode( " ", "a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9");

for( $i = 0; $i < $count; $i++ )
{
$radom_char = $radom_char.$char_base[rand(9, count($char_base))];
}

return $radom_char;

}

print random_character(6);

?>



Writter: lyhuuloi.
(Nguồn sanchoituoitre.vn)

Bài phản hồi
hoangnam_tnt 05/03/2009, 10:00 am
mình không hiểu cho lắm

 Thống kê chung
Đang trực tuyến
112 khách, 1 thành viên.
Thông số
Tổng số bài viết đã đăng: 57,953
Tổng số thành viên: 109155
Thành viên mới nhất: Anh Tú
Kỷ lục số người trực tuyến: 521   [ 09/04/2008, 02:18 am ]
[Thời gian tải trang này là 0.808 giây] - [26 truy vấn] - [GZIP bật]