Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> PHP

PHP rand() ฟังก์ชัน


ความหมายและการใช้งาน

แรนด์() ฟังก์ชันส่งคืนจำนวนเต็มโดยใช้เทคนิคการสร้างแบบสุ่มหลอก ช่วงเริ่มต้นอยู่ระหว่าง 0 และ getrandmax() เฉพาะแพลตฟอร์ม บนระบบปฏิบัติการ Windows 64 บิต คือ 2147483647 ฟังก์ชัน rand() สามารถเรียกได้โดยไม่มีอาร์กิวเมนต์ (ซึ่งในกรณีนี้ จะใช้ช่วงเริ่มต้น) หรือโดยการระบุพารามิเตอร์ต่ำสุดและสูงสุด

ฟังก์ชันนี้จะคืนค่าจำนวนเต็มเสมอ

ไวยากรณ์

rand ( void ) : int
rand ( int $min , int $max ) : int

พารามิเตอร์

Sr.No พารามิเตอร์ &คำอธิบาย
1 นาที
ขีดจำกัดล่างของช่วงเพื่อส่งคืนตัวเลข ค่าเริ่มต้นคือ 0
2 สูงสุด
ขีดจำกัดบนของช่วงที่จะส่งคืนตัวเลข ค่าเริ่มต้นคือ getrandmax()

คืนค่า

ฟังก์ชัน PHP rand() ส่งคืนค่าจำนวนเต็มระหว่าง min และ max โดยใช้เทคนิคการสร้างแบบสุ่มหลอก โปรดทราบว่าไม่แนะนำให้ใช้เพื่อวัตถุประสงค์ในการเข้ารหัส

เวอร์ชัน PHP

ฟังก์ชันนี้มีอยู่ใน PHP เวอร์ชัน 4.x, PHP 5.x เช่นเดียวกับ PHP 7.x

ตัวอย่าง

ตัวอย่างนี้ส่งคืนตัวเลขสุ่มโดยการเรียก rand() โดยไม่มีอาร์กิวเมนต์ -

<?php
echo "random number with no parameters rand() = " . rand() . "\n";
echo "another random number with no parameters rand() = " . rand() . "\n";
?>

ผลลัพธ์

ซึ่งอาจให้ผลลัพธ์ดังต่อไปนี้ (เนื่องจากเป็นตัวเลขสุ่ม มีโอกาสส่งคืนหมายเลขที่แตกต่างกันทุกครั้ง)−

random number with no parameters rand() = 1663374457
another random number with no parameters rand() = 888196648

ตัวอย่าง

ตัวอย่างต่อไปนี้ระบุอาร์กิวเมนต์ min และ max สำหรับฟังก์ชัน rand() -

<?php
   echo "rand(11,30) = " . rand(11,30) . "\n";
   echo "rand(11,30) = " . rand(11,30) . "\n";
?>

ผลลัพธ์

สิ่งนี้จะทำให้เกิดผลลัพธ์ดังต่อไปนี้ -

rand(11,30) = 29
rand(11,30) = 22

ตัวอย่าง

ส่วนเศษส่วนของค่าทศนิยมของพารามิเตอร์ต่ำสุดและสูงสุดจะถูกละเว้น -

<?php
   echo "rand(10.5,50.95) = " . rand(10.55, 50.95) . "\n";
?>

ผลลัพธ์

สิ่งนี้จะทำให้เกิดผลลัพธ์ดังต่อไปนี้ -

rand(10.5,50.95) = 45

ตัวอย่าง

ค่าสตริงของพารามิเตอร์ min และ/หรือ max จะทำให้เกิดข้อผิดพลาด

<?php
   echo "rand("aa", "bb") = " . rand("aa","bb") . "\n";;
?>

ผลลัพธ์

สิ่งนี้จะทำให้เกิดผลลัพธ์ดังต่อไปนี้ -

PHP Parse error: syntax error, unexpected 'aa' (T_STRING), expecting ',' or ';'