ให้เรตสมาชิก: 1 / 5

ดาวใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

 บทที่ 25 การใช้ฟังก์ชัน เพื่อสร้างตัวเลขแบบสุ่ม

การใช้ฟังก์ชันเพื่อสร้างตัวเลขแบบสุ่ม หรือ random number generator จะคล้ายกับของภาษาซี คือ เริ่มต้นด้วย srand () โดยจะต้องผ่านค่าที่เรียกว่า seed ซึ่งเป็นเลขจำนวนเต็มใดๆก็ได้ก่อน โดยทั่วไปจะใช้ค่าของเวลาในหน่วยวินาที หรือ Time Stamp ซึ่งสามารถอ่านได้จากฟังก์ชัน date("s") (s หมายถึง second หรือหน่วยวินาที) โดยผ่านค่านี้เป็นค่าของ seed จากนั้นจึงค่อยเรียกใช้ rand()

ตัวอย่างการใช้งาน
 

ไฟล์ตัวอย่าง :: code_ex1.php
<?php
srand( date("s") );
for ($i=0; $i < 10; $i++) {
  $x = rand() % 10;
  echo $x,"  ";
}
?>

คำสั่งนี้จะสร้างตัวเลขโดยการสุ่มเลือกเป็นจำนวน 10 ตัวเลข และพิมพ์ออกทางเอาพุต

ตัวอย่างการใช้งานเพิ่มเติมในรูปของฟังก์ชัน
 

ไฟล์ตัวอย่าง :: code_ex2.php
<?php
function randInt($low,$high) {
  srand ( date("s") );
  $range = $high - $low;
  $num = (rand() % $range) + $low;
  return $num;
}
?>

ตัวอย่างนี้จะสร้างตัวเลขโดยสุ่มที่อยู่ระหว่างเลขจำนวนเต็มสองค่า และเงื่อนไขของการใช้ฟังก์ชันนี้คือ $low จะต้องมีค่าน้อยกว่า $high และทั้งสองต้องเป็นเลขจำนวนเต็ม

ตัวอย่างการใช้งานเพิ่มเติมในรูปของฟังก์ชันเพิ่มเติม
 

ไฟล์ตัวอย่าง :: code_ex3.php
<?php
function randStr($len) {
srand ( date("s") );
$ret_str ="";
for ($i=0; $i < $len; $i++) {
$ret_str .= chr( (rand() % 26)+97 );
}
return $ret_str;
}
echo randStr(40);
?>

ตัวอย่างนี้จะสร้างสตริงค์แบบสุ่มที่มีความยาวตามที่กำหนดและสร้างขึ้นจากตัวอักขระภาษาอังกฤษ

ชื่อ
บทที่ 25 การใช้ฟังก์ชัน เพื่อสร้างตัวเลขแบบสุ่ม
หมวดหมู่
PHP Basics, PHP Basics
ฮิต
11422
ผู้สร้างเอกสาร
thatsawan
วันที่สร้างเอกสาร
2014-05-13 19:18:41

chapter_25.zip

ประเภทไฟล์ zip

ขนาดไฟล์ 991 bytes

ผู้อัพโหลดไฟล์ thatsawan

วันที่อัพโหลด 2014-04-21 14:41:42




กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
[Extension phpBB3.1.1] File Download Extension บล็อคในการดาวโหลด
โดย จันนุสรณ์ ดีแก่ พ 23 ม.ค. 2019 11:58 am บอร์ด phpBB 3.1 Extension Review
0
2
พ 23 ม.ค. 2019 11:58 am โดย จันนุสรณ์ ดีแก่
[Extension phpBB3.1.1] Previous / Next topic Extension หัวข้อก่อนหน้า / ถัดไป
โดย จันนุสรณ์ ดีแก่ พ 23 ม.ค. 2019 11:25 am บอร์ด phpBB 3.1 Extension Review
0
4
พ 23 ม.ค. 2019 11:25 am โดย จันนุสรณ์ ดีแก่
เมื่อหยุดยาวแล้วมาทำงาน
โดย จันนุสรณ์ ดีแก่ พ 23 ม.ค. 2019 10:38 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
4
พ 23 ม.ค. 2019 10:38 am โดย จันนุสรณ์ ดีแก่
อยากทราบวิธีการล้างค่าหลังทำการอัพโหลดเสร็จ ใน phpbb
โดย Ittichai_chupol ส 12 ม.ค. 2019 10:57 am บอร์ด Programming - PHP
1
38
อ 22 ม.ค. 2019 6:10 pm โดย Ittichai_chupol
การแบ่งประเภทของกิจการตามลักษณะการดำเนินงาน
โดย Chidchanok อ 22 ม.ค. 2019 3:05 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
8
อ 22 ม.ค. 2019 3:05 pm โดย Chidchanok
การจัดทำงบกระแสเงินสด
โดย Chidchanok อ 22 ม.ค. 2019 2:05 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
8
อ 22 ม.ค. 2019 2:05 pm โดย Chidchanok
PM 2.5
โดย จันนุสรณ์ ดีแก่ อ 22 ม.ค. 2019 1:35 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
10
อ 22 ม.ค. 2019 1:35 pm โดย จันนุสรณ์ ดีแก่
การตั้งค่าให้เว็บบอร์ด สามารถทำการเปลี่ยนชื่อผู้ใช้ได้ สำหรับแอดมินหรือผู้ดูแลระบบ
โดย จันนุสรณ์ ดีแก่ อ 22 ม.ค. 2019 1:18 pm บอร์ด phpBB user Guide Knowledge
0
9
อ 22 ม.ค. 2019 1:18 pm โดย จันนุสรณ์ ดีแก่
การทำตัว Check Box ใน Google Sheets
โดย Chidchanok อ 22 ม.ค. 2019 12:22 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
13
อ 22 ม.ค. 2019 12:22 pm โดย Chidchanok
[Extension phpBB3.1.1] Set forum width Extension เป็นการตั้งค่าความกว้างฟอรัม
โดย จันนุสรณ์ ดีแก่ อ 22 ม.ค. 2019 11:33 am บอร์ด phpBB 3.1 Extension Review
0
9
อ 22 ม.ค. 2019 11:33 am โดย จันนุสรณ์ ดีแก่
[Extension phpBB3.1.1] Activity Buttons - Quick Links Into Header Extension ปุ่มกิจกรรมต่างๆ
โดย จันนุสรณ์ ดีแก่ อ 22 ม.ค. 2019 10:49 am บอร์ด phpBB 3.1 Extension Review
0
9
อ 22 ม.ค. 2019 10:49 am โดย จันนุสรณ์ ดีแก่
R - Guide สำหรับ Migrate ข้อมูล
โดย tsukasaz จ 21 ม.ค. 2019 6:03 pm บอร์ด สิริกิตติรัตน์ - Developer
0
2
จ 21 ม.ค. 2019 6:03 pm โดย tsukasaz
ต้นเดือน Vs ปลายเดือน
โดย จันนุสรณ์ ดีแก่ จ 21 ม.ค. 2019 1:54 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
18
จ 21 ม.ค. 2019 1:54 pm โดย จันนุสรณ์ ดีแก่
ลายเซนต์คืออะไร การตั้งค่าข้อมูลส่วนตัว (แก้ไขลายเซนต์) วิธีการเพิ่มลายเซนต์
โดย จันนุสรณ์ ดีแก่ จ 21 ม.ค. 2019 11:42 am บอร์ด phpBB user Guide Knowledge
0
22
จ 21 ม.ค. 2019 11:42 am โดย จันนุสรณ์ ดีแก่
Bill of Material (BOM) คืออะไร
โดย ณัฐกฤตา บุญญะฤทธิ์ จ 21 ม.ค. 2019 11:38 am บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
28
จ 21 ม.ค. 2019 11:38 am โดย ณัฐกฤตา บุญญะฤทธิ์
[Extension phpBB3.1.1]Project Durango Extension เทมเพลสในรูปแบบสีเขียว
โดย จันนุสรณ์ ดีแก่ จ 21 ม.ค. 2019 11:02 am บอร์ด phpBB 3.1 Extension Review
0
14
จ 21 ม.ค. 2019 11:02 am โดย จันนุสรณ์ ดีแก่
[Extension phpBB3.1.1] Page Scrolling Extension ช่วยในการเลื่อนหน้า บนสุดและล่างสุด
โดย จันนุสรณ์ ดีแก่ จ 21 ม.ค. 2019 10:35 am บอร์ด phpBB 3.1 Extension Review
0
16
จ 21 ม.ค. 2019 10:35 am โดย จันนุสรณ์ ดีแก่
Q-ไม่สามารถ กด Save สินค้าได้
โดย Chidchanok จ 21 ม.ค. 2019 10:16 am บอร์ด M.D.Soft Co.,Ltd. - Tester
5
20
จ 21 ม.ค. 2019 11:07 am โดย Chidchanok
แก้ปัญหา ติดตั้ง โปรแกรมด้วย dpkg -i , apt-get deb
โดย mindphp จ 21 ม.ค. 2019 3:37 am บอร์ด Linux - Web Server
0
14
จ 21 ม.ค. 2019 3:37 am โดย mindphp
Manual (คู่มือ) คืออะไร Work Manual เเละ User Manual ต่างกันอย่างไร
โดย thatsawan จ 21 ม.ค. 2019 1:20 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
25
จ 21 ม.ค. 2019 1:20 am โดย thatsawan