ให้เรตสมาชิก: 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
ฮิต
4972
ผู้สร้างเอกสาร
thatsawan
วันที่สร้างเอกสาร
2014-05-13 19:18:41

chapter_25.zip

ประเภทไฟล์ zip

ขนาดไฟล์ 991 bytes

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

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




กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
MOD_MTB_NEWS_RECENT
วิธีตั้ง timezone บน Ubuntu หลังจากติดตั้ง OS Linux อุบันตูไว้แล้วเราสามารถเปลี่ยน
โดย mindphp พฤ 23 พ.ย. 2017 11:15 pm บอร์ด Linux - Web Server
1
9
พฤ 23 พ.ย. 2017 11:15 pm โดย mindphp
เชื่อมต่อฐานข้อมูลได้แล้ว แต่บันทึกข้อมูลไม่ได้ค่ะ
โดย Wallapa พฤ 23 พ.ย. 2017 7:19 pm บอร์ด Programming - C/C++ & java & Python
0
8
พฤ 23 พ.ย. 2017 7:19 pm โดย Wallapa
ห้องนอนของ IT Support
โดย Before Dong พฤ 23 พ.ย. 2017 6:23 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
24
พฤ 23 พ.ย. 2017 6:23 pm โดย konseo
สอบถามการเขียน Selenium
โดย Panchalee พฤ 23 พ.ย. 2017 5:03 pm บอร์ด Programming - C/C++ & java & Python
0
8
พฤ 23 พ.ย. 2017 5:03 pm โดย Panchalee
เกี่ยวกับ schema version
โดย Minanda พฤ 23 พ.ย. 2017 2:28 pm บอร์ด Joomla Development
5
34
พฤ 23 พ.ย. 2017 2:28 pm โดย Minanda
รวมบทความสอน selenium Webdriver ภาษา Python
โดย nuattawoot พฤ 23 พ.ย. 2017 1:37 pm บอร์ด Python Knowledge
0
11
พฤ 23 พ.ย. 2017 1:37 pm โดย nuattawoot
สอบถามเรื่อง Python Framework Flask ไม่พบ URL ใน Server
โดย Panchalee พฤ 23 พ.ย. 2017 10:39 am บอร์ด Programming - C/C++ & java & Python
1
15
พฤ 23 พ.ย. 2017 10:39 am โดย nuattawoot
กู้คืนอีเมล์
โดย บุคคลทั่วไป พฤ 23 พ.ย. 2017 10:18 am บอร์ด Programming - PHP
2
14
พฤ 23 พ.ย. 2017 10:18 am โดย บุคคลทั่วไป
บันทึกข้อมูล ลงฐานข้อมูลไม่ได้ค่ะ
โดย Wallapa พ 22 พ.ย. 2017 3:39 pm บอร์ด Programming - C/C++ & java & Python
4
45
พ 22 พ.ย. 2017 3:39 pm โดย nuattawoot
เชื่อมต่อ Server ใน pgadmin ไม่ได้ค่ะ
โดย Panchalee พ 22 พ.ย. 2017 2:59 pm บอร์ด PostgreSQL
1
31
พ 22 พ.ย. 2017 2:59 pm โดย mindphp
context diagram ระบบบริหารบัญชีครัวเรือน
โดย Maprang Kannika พ 22 พ.ย. 2017 11:24 am บอร์ด SQL - Database
1
25
พ 22 พ.ย. 2017 11:24 am โดย jataz2
เมื่อค้น Google ว่า How to fixed Error 500 ?
โดย Before Dong พ 22 พ.ย. 2017 10:27 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
58
พ 22 พ.ย. 2017 10:27 am โดย konseo
ปัญหา ออกแบบพัฒนา
โดย บุคคลทั่วไป อ 21 พ.ย. 2017 8:15 pm บอร์ด Programming - PHP
0
23
อ 21 พ.ย. 2017 8:15 pm โดย บุคคลทั่วไป
รันโค้ดแล้ว Error ค่ะ
โดย Wallapa อ 21 พ.ย. 2017 5:24 pm บอร์ด Programming - C/C++ & java & Python
4
61
อ 21 พ.ย. 2017 5:24 pm โดย Wallapa
รันโค้ดแล้ว Error ค่ะ
โดย Wallapa อ 21 พ.ย. 2017 4:58 pm บอร์ด Programming - C/C++ & java & Python
1
33
อ 21 พ.ย. 2017 4:58 pm โดย mindphp
PostgreSQL คืออะไร MySQL คืออะไร
โดย Panchalee อ 21 พ.ย. 2017 1:40 pm บอร์ด PostgreSQL
1
34
อ 21 พ.ย. 2017 1:40 pm โดย jataz2
PostgreSQL กับ MySQL ต่างกันยังไงค่ะ?
โดย Wallapa อ 21 พ.ย. 2017 1:40 pm บอร์ด PostgreSQL
0
20
อ 21 พ.ย. 2017 1:40 pm โดย Wallapa
แจกฟรี!! ปฏิทิน CMS 2018
โดย Before Dong อ 21 พ.ย. 2017 11:23 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
3
53
อ 21 พ.ย. 2017 11:23 am โดย konseo
ขอทราบวิธีติดตั้ง แพ็กเกจ FFmpeg บน Windows หน่อยค่ะ
โดย Panchalee อ 21 พ.ย. 2017 10:32 am บอร์ด Python Knowledge
2
22
อ 21 พ.ย. 2017 10:32 am โดย nuattawoot
เมื่อเอาคำว่า What is Error 500 ไปแปลภาษา
โดย Before Dong อ 21 พ.ย. 2017 9:37 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
28
อ 21 พ.ย. 2017 9:37 am โดย Before Dong