Hướng dẫn php math random equivalent
I need a PHP function that generates random number identical to javascript Math.random() with the same seed. Show
MDN about math.random():
As far I tried the PHP's rand() generates something like that:
And javascript seems to generate random numbers on it's own way:
I need PHP code that is equivalent for math.random(), not new javascript code. I can't change javascript. asked Jul 17, 2013 at 2:38
5 You could use a function that returns the value: PHP
JavaScript
@elclanrs solution is easier and doesn't need the cast in return.
There's a good question about the difference between PHP
answered Jul 17, 2013 at 2:57
thiagobragathiagobraga 1,4652 gold badges15 silver badges27 bronze badges Javascript's Math.random gives a random number between 0 and 1. Zero is a correct output, but 1 should not be included. @thiagobraga's answer could give 1 as an output. My solution is this:
This will give a random number between 0 and 0.99999999953434. answered Nov 4, 2014 at 10:45
You could try:
Or even:
However, @elclanrs solution seems a lot easier. I tried. answered Jul 17, 2013 at 2:44
Shawn31313Shawn31313 5,8803 gold badges33 silver badges79 bronze badges Vietnamese (Tiếng Việt) translation by Vy Cam Nguyen (you can also view the original English article) Nội dung chính
Hãy để tôi bắt đầu bài viết này bằng việc nói rằng hầu như không có sự kiện nào thực sự ngẫu nhiên. Ngay cả kết quả của trò tung đồng xu kinh điển về mặt lý thuyết cũng có thể được dự đoán nếu chúng ta biết
tác động của mọi yếu tố liên quan, như ma sát không khí, trọng lực và lực ban đầu. Việc tạo ra các chuỗi ngẫu nhiên gồm chữ và số cũng có nguyên tắc tương tự. Điều tốt đẹp nhất có thể chờ đợi là tạo ra những số và chuỗi không tuân theo một pattern(hình mẫu) và một kẻ tấn công về thực tiễn sẽ không thể đoán ra. Trong hướng dẫn này, chúng tôi sẽ đề cập đến các kỹ thuật khác nhau để tạo số và chuỗi ký tự chữ ngẫu nhiên trong PHP. Một số trong số chúng sẽ được mã hóa, trong khi một số khác chỉ dành cho nhu cầu thông thường, như gán tên file giả ngẫu nhiên hoặc tạo URL và đề xuất username(tên người dùng). Tạo ra các số ngẫu nhiên trong PHPCó ba hàm khác nhau để tạo số ngẫu nhiên trong PHP. Tất cả các hàm đó sẽ nhận một giá trị tối thiểu và tối đa có thể cho các số ngẫu nhiên và trả về một số ngẫu nhiên cho bạn. Đó là Với Với Hàm này thậm chí còn trở nên tốt hơn trong PHP 7.2.0 bằng cách loại bỏ lỗi modulo. Điều này có nghĩa là đối với một số seed cụ thể, chuỗi số ngẫu nhiên của bạn bây giờ sẽ tốt hơn một chút so với các phiên bản cũ hơn. Măc dù một số code chuyên dụng thực sự có thể dựa
vào khuynh hướng này. Nếu vậy, bạn có thể sử dụng thuật toán seed cũ hơn bằng cách gọi hàm Hàm 187 3276 1267 15 1267 34598 3467 125 17 Trong chuỗi trên, chúng tôi đã có 1267 hai lần trong kết quả, nhưng điều đó không có nghĩa là toàn bộ chuỗi bắt đầu lặp lại sau đó. Không thể có cùng một số lặp lại sớm như vậy trong một chuỗi ngẫu nhiên, nhưng điều đó có thể! Số nguyên ngẫu nhiên được mã hóa an toànNếu bạn muốn các số pseudo (giả) ngẫu nhiên được bảo mật bằng
mã hóa, hàm Các số float ngẫu nhiênThay vì tạo integer ngẫu nhiên, có thể bạn cũng muốn tạo số float. Điều này có thể được thực hiện dễ dàng bằng cách chia
một số ngẫu nhiên với giá trị được trả về bởi Khi tạo số float ngẫu nhiên giữa các giới hạn nhất định, chúng tôi đảm bảo rằng các integer ngẫu nhiên không vượt quá Seed cho trình tạo số ngẫu nhiênMột khái niệm cần một chút giải thích là seeds. Nói một cách đơn giản, đây chỉ là những số có thể được sử dụng để khởi tạo các hàm Điều quan trọng cần nhớ là việc cung cấp một giá trị seed ban đầu mỗi lần trước khi gọi Seed một số ngẫu nhiên rất hữu ích trong các tình huống mà bạn muốn tạo một chuỗi ngẫu nhiên nhưng có thể lặp lại. Đoạn mã sau tạo ra cùng một chuỗi các số ngẫu nhiên khi chạy hai lần.
|