Important Announcement
PubHTML5 Scheduled Server Maintenance on (GMT) Sunday, June 26th, 2:00 am - 8:00 am.
PubHTML5 site will be inoperative during the times indicated!

Home Explore วิชา การเขียนโปรแกรมคอมพวิเตอร์เพื่องานสารสนเทศ1

วิชา การเขียนโปรแกรมคอมพวิเตอร์เพื่องานสารสนเทศ1

Published by lavanh9979, 2021-08-23 04:59:24

Description: วิชา การเขียนโปรแกรมคอมพวิเตอร์เพื่องานสารสนเทศ1

Search

Read the Text Version

34 ตัวอยา่ งท่ี 2.1 ผังงานและรหัสเทียมโปรแกรมโครงสร้างแบบตามลาดับ start Start Num myNumber Num myNumber Num myAnswer Num myAnswer Input myNumber Input myNumber Set myAnswer= MyNumber * 2 Set myAnswer= MyNumber * 2 Output myAnswer Output myAnswer Stop stop ภาพที่ 2.2 ผังงานและรหสั เทียมโปรแกรมหาผลคณู ของตวั เลข ท่ีมา (Joyce Farrell, 2013: 40) จากตัวอย่างข้างต้นผังงานประกาศตัวแปรชนิดตัวเลข (num) ชื่อ “myNumber” และ “myAnswer” จากนั้นกาหนดให้รับค่าจากแป้นพิมพ์ (input) มาเก็บไว้ท่ีตัวแปร “myNumber” แล้วกาหนดค่าให้กับตัวแปร “myAnswer” โดยการนาค่าท่ีเก็บไว้ในตัวแปร “myNumber” มาคูณ กับตัวเลข 2 แล้วให้แสดงผล (output) ค่าของตัวแปร “myAnswer” ออกทางอุปกรณ์แสดงผลลัพธ์ เช่น จอภาพ หรือเครือ่ งพมิ พ์ เป็นต้น

35 โครงสร้างแบบทางเลอื ก (Selection Structure) โครงสร้างแบบทางเลือกเป็นการเขียนโปรแกรมแบบทดสอบเง่ือนไขก่อนที่จะทางานอย่างใด อย่างหนึ่งหรอื เลือกกระทา โดยปกตจิ ะมเี หตกุ ารณ์ให้ทา 2 กระบวนการ ถา้ เง่ือนไขเปน็ จริงจะกระทา กระบวนการหน่ึง และถ้าเป็นเท็จจะกระทาอีกกระบวนการหนึ่ง แต่ถ้าซับซ้อนมากขึ้น จะต้องใช้ เง่ือนไขหลายช้ัน เช่น การตัดเกรดนักศึกษา เป็นต้น แสดงเป็นผังงานและรหัสเทียมได้ดังภาพที่ 2.3 (วิไลพร กลุ ตงั วฒั นา, 2554: 5-8; Joyce Farrell, 2013: 87-88) Start If Decision is true then Process 1 Else Process 2 1 2 End if Stop ภาพที่ 2.3 ผงั งานและรหสั เทียมโปรแกรมโครงสร้างแบบทางเลือก จากภาพข้างตน้ ผังงานและรหัสเทียมจะทาการทดสอบเง่ือนไขก่อนเพ่ือเลือกดาเนินการอย่าง ใดอย่างหนึ่ง ถ้าเง่ือนไขเป็นจริงจะเลือกดาเนินการ “Process 1” และถ้าเง่ือนไขเป็นเท็จจะเลือก ดาเนินการ “Process 2” ส้ินสุดการทดสอบและออกจากโปรแกรม สาหรับโครงสร้างแบบทางเลือก สามารถแบง่ ออกได้ 3 รปู แบบ ดงั นี้ 1. โครงสร้างแบบทดสอบเง่ือนไข 1 ทางเลือก นั่นคือ ทดสอบเงื่อนไขก่อน ถ้าเป็นจริงให้ ดาเนินการตามกระบวนการที่กาหนด แต่ถ้าเป็นเท็จไม่ต้องดาเนินการให้ข้ามไปดาเนินการในส่วนอนื่ ทเี่ หลือหรอื อาจสิ้นสดุ โปรแกรม ดงั แสดงตามภาพที่ 2.4 พรอ้ ยพจิ ารณาตัวอยา่ งที่ 2.2

36 ConditionH ? Yes Start If ConditionH is true then No Step J Step K Step J Step L Step K Step L End if Stop ภาพท่ี 2.4 ผงั งานและรหสั เทียมโปรแกรมโครงสร้างแบบ 1 ทางเลอื ก จากภาพข้างต้น ผังงานและรหัสเทียมก่อนดาเนินการจะทดสอบเงื่อนไข “ConditionH” ว่า เป็นจริงหรือไม่ ถ้าเป็นจริงจะดาเนินการ “Step J” ต่อด้วย “Step K” ถัดมาเป็น “Step L” และ ออกจากส่วนนี้ไปทาส่วนถัดไป และถ้าเง่ือนไขเป็นเท็จจะไม่ดาเนินการอะไรพร้อมไปทาส่วนถัดไป เชน่ กนั ตัวอย่างที่ 2.2 รหสั เทยี มโปรแกรมโครงสรา้ งแบบทดสอบเงือ่ นไข 1 ทางเลือก Start Set CustomerAge= 50 st op Set Sales= 1500 Set Discount= 0 I f CustomerAge> = 65 then Discount = Sales * 0.50 End if Set Net= Sales-Discount Output Net จากตัวอย่างข้างตน้ รหัสเทียมกาหนดคา่ ให้ CustomerAge เปน็ 50 Sales เป็น 1500 และ คา่ Discount เป็น 0 ทดสอบเง่ือนไขว่า อายุของลูกคา้ (customerAge) มคี า่ มากกว่าหรือเท่ากบั 65 หรือไม่ ถา้ เง่ือนไขเปน็ จรงิ ให้กาหนดคา่ ของ Discount เป็นการนาค่าของ Sales คณู ด้วย 0.50 ถา้ เงือ่ นไขเป็นเทจ็ ไม่ต้องดาเนนิ การในส่วนนี้ใหไ้ ปกาหนดค่าของ Net โดยเกิดจากนาค่าของ Sales ลบ ออกดว้ ย Discount พร้อมแสดงค่าของ Net ออกทางจอภาพ ส้นิ สุดการทางานของโปรแกรม

37 2. โครงสร้างแบบทดสอบเง่ือนไข 2 ทางเลือก เป็นการทดสอบเงื่อนไขก่อน ถ้าเป็นจริงให้ ดาเนินการกระบวนการที่เป็นจริง แต่ถ้าเป็นเท็จให้เลือกดาเนินการกระบวนการท่ีเป็นเท็จ แสดงดัง ภาพที่ 2.3 พร้อมพิจารณาตวั อยา่ งที่ 2.3 ตัวอย่างท่ี 2.3 รหัสเทียมโปรแกรมโครงสร้างแบบทดสอบเงอ่ื นไข 2 ทางเลือก Start Set CustomerAge= 50 st op Set Sales= 1500 I f CustomerAge> = 65 then Discount = Sales * 0.50 Else Discount = Sales * 0.25 End if Set Net= Sales-Discount Output Net จากตัวอย่างข้างต้นรหัสเทียมกาหนดค่าให้ CustomerAge เป็น 50 Sales เป็น 1500 และ คา่ Discount เปน็ 0 ทดสอบเงอื่ นไขว่า อายุของลกู ค้า (customerAge) มีคา่ มากกว่าหรือเท่ากับ 65 หรือไม่ ถ้าเงื่อนไขเป็นจริงให้กาหนดค่าของ Discount เป็นการนาค่าของ Sales คูณด้วย 0.50 ถ้า เง่อื นไขเปน็ เทจ็ ใหก้ าหนดคา่ ของ Discount เป็นการนาคา่ ของ Sales คณู ด้วย 0.25 สิน้ สดุ การทางาน ในส่วนการทดสอบเงื่อนไข แล้วให้ไปกาหนดค่าของ Net โดยเกิดจากนาค่าของ Sales ลบออกด้วย Discount พรอ้ มแสดงคา่ ของ Net ออกทางจอภาพ ส้ินสุดการทางานของโปรแกรม 3. โครงสร้างแบบทดสอบเง่ือนไขหลายทางเลือก ก่อนดาเนินการทางเลือกใดจะทดสอบ เงอ่ื นไขเสมอ ถ้าเป็นจริงเง่อื นไขใดใหด้ าเนนิ การตามกระบวนการของเงอ่ื นไขน้ัน ConditionA ? Yes Start If ConditionA is true then No Step J Step J ConditionB ? Yes Step K ElseIf ConditionB is true then Step K End if Stop No ภาพที่ 2.5 ผงั งานและรหัสเทียมโปรแกรมโครงสร้างแบบหลายทางเลอื ก

38 จากภาพข้างต้น ผังงานและรหัสเทียมก่อนดาเนินการจะทดสอบเงื่อนไข “ConditionA” วา่ เป็นจรงิ หรือไม่ ถ้าเปน็ จรงิ จะดาเนนิ การ “Step J” ถ้าเป็นเทจ็ ให้ทดสอบเงอ่ื นไข “ConditionB” ว่า เป็นจรงิ หรือไม่ ถ้าเป็นจรงิ จะดาเนินการ “Step K” ถดั มาเป็น “Step L” และถ้าเงอ่ื นไขเป็นเท็จจะ ไม่ดาเนนิ การอะไรพร้อมไปทาส่วนถัดไปเชน่ กนั พจิ ารณาตัวอยา่ งท่ี 2.4 ต่อไปนี้ ตัวอย่างท่ี 2.4 รหสั เทียมโปรแกรมโครงสร้างแบบทดสอบเงื่อนไขหลายทางเลือก Start Set CustomerAge= 50 st op Set Sales= 1500 I f CustomerAge> = 65 then Discount = Sales * 0.50 Elseif CustomerAge> = 55 then Discount = Sales * 0.25 End if Set Net= Sales-Discount Output Net จากตัวอย่างข้างต้นรหัสเทียมกาหนดค่าให้ CustomerAge เป็น 50 Sales เป็น 1500 และ ค่า Discount เป็น 0 ทดสอบเงอ่ื นไขว่า อายขุ องลกู ค้า (customerAge) มคี ่ามากกวา่ หรือเท่ากบั 65 หรือไม่ ถ้าเง่ือนไขเป็นจริงให้กาหนดค่าของ Discount เป็นการนาค่าของ Sales คูณด้วย 0.50 ถ้า เงื่อนไขเป็นเท็จให้ทดสอบเง่ือนไขถัดไปว่า อายุของลูกค้า (customerAge) มีค่ามากกว่าหรือเท่ากับ 55 หรือไม่ ถ้าเงื่อนไขเป็นจริงให้กาหนดค่าของ Discount เป็นการนาค่าของ Sales คูณด้วย 0.25 สิ้นสุดการทางานในส่วนการทดสอบเงื่อนไข แล้วให้ไปกาหนดค่าของ Net โดยเกิดจากนาค่าของ Sales ลบออกด้วย Discount พร้อมแสดงค่าของ Net ออกทางจอภาพ ส้ินสุดการทางานของ โปรแกรม โครงสร้างแบบวนรอบ (Loop Structure) โครงสรา้ งแบบวนรอบ คอื การดาเนินการกระบวนการอยา่ งหน่ึงหลายครั้ง ถา้ เง่อื นไขเป็นจริง และจะทาซ้าไปจนกระทั่งเเงื่อนไขเป็นเท็จ จึงหยุดดาเนินการและออกจากส่วนน้ีไปทาส่วนถัดไปของ โปรแกรม โครงรา้ งแบบวนรอบสามารถแบ่งออกเป็น 3 รูปแบบ ดังน้ี (วิไลพร กุลตังวฒั นา, 2554: 9- 16; Joyce Farrell, 2013: 88-93) 1. โครงสร้างแบบตรวจสอบเงื่อนไขก่อนแล้วจึงทาซ้า โครงสร้างแบบน้ีจะตรวจสอบเง่ือนไข ก่อน ถ้าเป็นจริงจะดาเนินการภายในการวนรอบ จากนั้นวนกลับไปตรวจสอบเงื่อนไขอีกครั้ง ดาเนินการซ้า ๆ ไปจนกว่าเงอื่ นไขจะเป็นเท็จ จงึ ออกนอกการวนรอบทางานซา้ แสดงดังภาพท่ี 2.6

39 Start While Condition is true Statement End while Stop Yes No ภาพที่ 2.6 ผงั งานและรหัสเทียมโปรแกรมโครงสรา้ งแบบวนรอบ จากตัวอย่างผังงานและรหัสเทียมข้างต้น แสดงคาส่ังวนรอบ (while) ซ่ึงหมายถึงการทาซ้า (statement) ในขณะที่เป็นจริง (Condition is true) และเลิกการทาซ้าเม่ือเง่ือนไขเป็นเท็จ (Condition is false) จบการประมวลผลโปรแกรม พจิ ารณาตัวอย่างท่ี 2.5 ต่อไปนี้ ตัวอยา่ งที่ 2.5 รหสั เทยี มโปรแกรมโครงร้างแบบวนรอบ Start Set Count= 0 Stop While Count< 4 Output “Hello” Count= Count+ 1 End while Output “Goodbye” จากตัวอย่างข้างต้นรหัสเทียมกาหนดค่าให้ Count เป็น 0 ใช้คาส่ัง While เพ่ือตรวจสอบ เงื่อนไขว่า ค่าของ Count น้อยกวา่ 4 หรือไม่ ถา้ เปน็ จริงให้แสดงข้อความ “Hello” ออกทางจอภาพ แล้วเพิ่มค่าให้ Count ขึ้น 1 ค่า แล้ววนกลับไปตรวจสอบเงื่อนไขซ้าอีก ดาเนินการซ้าไปจนกระทั้ง เง่ือนไขเป็นเท็จ น่ันคือค่า Count เท่ากับ 4 จึงหยุดการทางานแล้วออกนอกการวนรอบไปทาคาส่ัง แสดงข้อความ “Goodbye” ออกทางจอภาพ แล้วส้ินสุดการประมวลผลโปรแกรม ผลลัพธ์ของ โปรแกรมจะแสดงขอ้ ความ “Hello” จานวน 4 ครัง้ และแสดง “Goodbye” จานวน 1 ครง้ั 2. โครงสร้างแบบดาเนินการก่อนแล้วจึงตรวจสอบเง่ือนไขเพื่อทาซ้า จะดาเนินการตาม ชุดคาส่ังภายในการวนรอบก่อน 1 รอบ แล้วจึงตรวจสอบเงื่อนไข ถ้าเง่ือนไขเป็นจรงิ ให้กลับไปทางาน

40 ภายในการวนรอบอีก ทาซ้าเช่นน้ีไปจนกระท่ังเงื่อนไขเป็นเท็จ จึงหยุดการทางานและออกนอกการ วนรอบ แสดงดังภาพที่ 2.7 Start Do Statement No While Condition is true Stop Yes ภาพท่ี 2.7 ผังงานและรหสั เทียมโปรแกรมโครงสร้างแบบดาเนินการวนรอบก่อนแล้วจงึ ตรวจสอบ เงื่อนไขเพื่อทาซ้า จากตัวอย่างผังงานและรหัสเทียมข้างต้น แสดงคาส่งั วนรอบ (do…while) จะดาเนินการส่วน statement ก่อนแล้วจึงตรวจสอบเง่ือนไข กรณีเป็นจริง (Condition is true) ให้วนกลับไปทา statement ซ้าจนกว่าเง่ือนไขเป็นเท็จ (Condition is false) จึงหยุดการทา statement ซ้าและจบ การประมวลผลโปรแกรม พจิ ารณาตัวอย่างที่ 2.6 ตอ่ ไปนี้ ตวั อยา่ งท่ี 2.6 รหสั เทียมโปรแกรมแบบทาก่อนแลว้ จึงตรวจสอบเง่อื นไขเพื่อทาซ้า Start Set Count= 0 Stop Do Output “Hello” Count= Count+ 1 While Count< 4 Output “Goodbye” จากตัวอย่างข้างต้นรหัสเทียมกาหนดค่าให้ Count เป็น 0 ส่วนคาส่ัง Do เป็นการบอก จุดเร่ิมต้นในการทาซ้า โดยจะแสดงข้อความ “Hello” ออกทางจอภาพ แล้วเพ่ิมค่าให้ Count ข้ึน 1 ค่า ใช้คาสั่ง While ตรวจสอบเงื่อนไขว่า ค่าของ Count น้อยกว่า 4 หรือไม่ ถ้าเป็นจริงให้แล้ววน กลับไปทาซ้าอีก ดาเนินการซ้าไปจนกระทั้งเง่ือนไขเป็นเท็จ นั่นคือค่า Count เท่ากับ 4 จึงหยุดการ

41 ทางานแล้วออกนอกการวนรอบไปทาคาส่ังแสดงข้อความ “Goodbye” ออกทางจอภาพ แล้วส้ินสุด การประมวลผลโปรแกรม ผลลพั ธ์ของโปรแกรมจะแสดงข้อความ “Hello” จานวน 5 คร้งั และแสดง “Goodbye” จานวน 1 ครั้ง 3. โครงสรา้ งแบบทาซา้ ตามจานวนรอบที่กาหนด เปน็ โครงสร้างที่สามารถระบุจานวนรอบใน การทาซา้ แสดงดงั ภาพที่ 2.8 Start For (initialization; loop Condition; increment) Statement End for Stop No Loop Condition Yes ภาพท่ี 2.8 ผังงานและรหสั เทียมโปรแกรมโครงสร้างแบบทาซา้ ตามจานวนรอบที่กาหนด จากภาพข้างต้นโปรแกรมจะกาหนดค่าเริ่มต้นของตัวแปรนับรอบ (initialization) ซ่ึงเป็นตัว แปรท่ีจะนาไปตรวจสอบในเงื่อนไข จากน้ันเข้าไปตรวจสอบเง่ือนไข (Loop Condition) ถ้าเง่ือนไข เป็นจริงให้ดาเนินการ statement และเพิ่มค่าให้ตัวแปรนับรอบ แล้ววนกลับไปตรวจสอบเงื่อนไขอีก คร้ังก่อนเข้าดาเนินการซา้ ทาจนกระทั้งเงื่อนไขเป็นเท็จ จึงหยุดและออกจากการวนรอบไปทาในส่วน ถัดไปของโปรแกรม ใหพ้ จิ ารณาตวั อย่างท่ี 2.7 ต่อไปน้ี ตัวอย่างท่ี 2.7 รหัสเทียมจากตัวอย่างที่ 2.5 สามารถเขียนโปรแกรมแบบทาซ้าตามจานวนรอบที่ กาหนด ซ่ึงสน้ั และกระชับกว่า Start For (count= 0; Count< 4; count= count+ 1) Stop Output “Hello” End for Output “Goodbye” จากตวั อยา่ งข้างต้นเมอ่ื ประมวลผลแลว้ จะทางานเหมือนตวั อยา่ งที่ 2.5

42 สรปุ โครงสรา้ งการเขียนโปรแกรมท่ีใชใ้ นการเขยี นโปรแกรมคอมพวิ เตอร์ แบง่ ออกเป็น 3 รปู แบบ คือ โครงสร้างแบบตามลาดับท่ีเป็นการเขียนโปรแกรมให้ทางานต่อเน่ืองจากบนลงล่างตามลาดับ โครงสร้างแบบทางเลือกท่ีเป็นการเขียนโปรแกรมแบบทดสอบเง่ือนไขท่ีจะทางานอย่างใดอย่างหนึ่ง โดยจะประกอบด้วยโครงสร้างย่อย 3 รูปแบบคือ โครงสร้างแบบทดสอบเง่ือนไข 1 ทางเลือก โครงสรา้ งแบบทดสอบเง่อื นไข 2 ทางเลือก และโครงสร้างแบบทดสอบเงือ่ นไขหลายทางเลอื ก สุดท้าย โครงสร้างแบบวนรอบทใ่ี ชใ้ นการดาเนนิ การกระบวนการอย่างหนงึ่ หลายครั้ง ประกอบด้วยโครงสรา้ ง ย่อย 3 รูปแบบคือ แบบตรวจสอบเงื่อนไขก่อนแล้วจึงทาซ้า แบบดาเนินการก่อนแล้วจึงตรวจสอบ เงือ่ นไขเพ่ือทาซา้ และแบบทาซา้ ตามจานวนรอบทกี่ าหนด แบบฝึกหดั 1. จงอธิบายหลักการทางานของโครงสร้างแบบทางเลือก 2. จงอธบิ ายหลกั การทางานของโครงสร้างแบบวนรอบ 3. จงบอกความแตกตา่ งของโครงสร้างแบบตรวจสอบเงื่อนไขกน่ อแลว้ จาทาซา้ และแบบดาเนนิ การ กอ่ นแลว้ จึงตรวจสอบเง่ือนไขเพื่อทาซ้า 4. จงเขยี นผงั งานและรหสั เทียมของโปรแกรมสาหรบั การตรวจสอบวา่ ถ้าคะแนนสอบไดม้ ากกว่า หรอื เทา่ กับ 60 ให้แสดงข้อความวา่ “สอบผ่าน” และถ้าคะแนนนอ้ ยกว่า 60 ใหแ้ สดงข้อความวา่ “สอบไม่ผ่าน” 5. จงเขียนรหัสเทียมและผังงานแกไ้ ขปญั หาต่อไปน้ี 5.1. คานวณรายรับหลงั หกั ภาษีของพนักงานแต่ละคน โดยมีเงือ่ นไขว่า หากพนักงานมีรายได้ มากกวา่ 20,000 บาท ใหห้ ักภาษี ณ ทจ่ี า่ ย 5% หากมีรายไดต้ ่ากว่าน้ีไมต่ ้องหักภาษี กาหนดให้แสดงค่าต่อไปน้ี ช่อื -สกลุ พนักงาน รายรบั ภาษีหัก ณ ท่จี ่าย รายรับหลงั หัก ภาษี 5.2. การคานวณค่าคอมมิชช่นั ของพนักงานขายในแต่ละเดือน โดยมเี ง่ือนไขการคิดคา่ คอมมิชชนั่ ดงั นี้ 5.2.1. ถ้ายอดขาย มากกวา่ 25,000 บาท ให้ค่าคอมมชิ ชน่ั 7% ของยอดขาย 5.2.2. ถา้ ยอดขาย 2,000 -25,000 บาท ให้คา่ คอมมิชชัน่ 4% ของยอดขาย 5.2.3. ถา้ ยอดขาย ต่ากวา่ 2,000 บาท ให้คา่ คอมมชิ ชนั่ 2% ของยอดขาย 5.2.4. กาหนดให้แสดงค่าดังน้ี ช่อื -นามสกุลพนักงาน ยอดขาย คา่ คอมมชิ ชั่นที่ไดร้ บั

43 เอกสารอา้ งอิง วไิ ลพร กุลตังวัฒนา. (2554). โครงสร้างขอ้ มลู และขัน้ ตอนวิธี. อุดรธานี: มหาวทิ ยาลัยอดุ รธานี Joyce Farrell. (2013). A Beginner’s Guide to Programming Logic and Design Introductory. 7th ed. China: Course Technology, Cengage Learning.

แผนบริหารการสอนประจาบทท่ี 3 เนือ้ หาประจาบทท่ี 3 ความรู้พน้ื ฐานการเขยี นโปรแกรมบนอนิ เทอร์เนต็ อนิ เทอร์เน็ต เวิลดไ์ วดเ์ วบ็ ( World Wide Web : WWW) เว็บเบราวเ์ ซอร์ (Web Browsers) เว็บเซริ ์ฟเวอร์ (Web Servers) ยูอารแ์ อล (Uniform Resource Locators : URL) โพรโทคอลเอชทที ีพี (The Hypertext Transfer Protocol : HTTP) ภาษาที่ใช้ในการเขียนโปรแกรม การเตรยี มความพร้อมในการเขยี นโปรแกรมภาษา PHP วตั ถปุ ระสงคเ์ ชงิ พฤตกิ รรม เม่อื ศึกษาบทเรียนนแี้ ล้ว ผู้เรยี นมีพฤติกรรมดังน้ี 1. อธิบายเก่ียวกับอินเทอร์เน็ต เวิลด์ไวด์เว็บ เว็บเบราว์เซอร์ เว็บเซิร์ฟเวอร์ ยูอาร์แอล และ เอชทีทพี ี 2. สามารถเขียนโปรแกรมด้วยภาษา HTML และ PHP แก้ไปปัญหาตามแบบฝึกหัดประจา บทได้อย่างเหมาะสม วธิ ีสอนและกจิ กรรมการเรียนการสอน 1. วธิ สี อน 1.1 บรรยาย และสาธติ 1.2 อภิปราย ค้นคว้าเพิ่มเติม 1.3 นกั ศกึ ษาทาแบบฝกึ หัด และผู้สอนตรวจแบบฝึกหดั 1.4 มอบหมายแบบฝึกหดั เป็นการบา้ นเพื่อทบทวนบทเรียน 2. กิจกรรมการเรยี นการสอน สปั ดาห์ 5-6 (8 ชัว่ โมง) 2.1 ผู้สอนอธิบายและสาธิตเนื้อหา เปดิ โอกาสให้ผเู้ รียนซักถามปัญหาในหัวข้อท่ียงั ไมเ่ ข้าใจ ให้ผู้เรียนคน้ ควา้ เพ่ิมเติมจากอนิ เทอร์เนต็ และเอกสารประกอบการสอน อภิปราย และสรปุ เนือ้ หาสาระสาคญั รว่ มกัน 2.2 ผู้เรยี นทาแบบฝึกหัดประจาบทและตอบคาถามลงใน Google Classroom เพือ่ ให้ผสู้ อนตรวจ อธิบายและชี้แจงคาตอบที่ถกู ต้อง

46 สอื่ การเรยี นการสอน 1. เอกสารประกอบการสอนการเขยี นโปรแกรมคอมพวิ เตอร์เพอ่ื งานสารสนเทศ 1 2. เครื่องคอมพิวเตอร์ 3. PowerPoint เนื้อหาบทที่ 3 4. สือ่ ออนไลนช์ ่วยสอน : โปรแกรม Google Classroom การวัดผลและประเมินผล 1. การวัดผล สังเกตจากการตอบคาถาม ตรวจแบบฝึกหัด 2. การประเมินผล ผู้เรยี นสามารถตอบคาถามและทาแบบฝึกหดั ไดถ้ กู ต้อง ร้อยละ 80

บทท่ี 3 ความรพู้ ืน้ ฐานการเขียนโปรแกรมบนอินเทอรเ์ นต็ การใช้อินเทอร์เน็ตหรือบริการต่างๆ บนเวร์ดไวด์เว็บเข้ามามีบทบาทต่อการดารงชีวิตใน สังคมปัจจุบันเป็นอย่างมาก ไม่ว่าจะเป็นการติดต่อสื่อสารกับเพื่อน การซื้อขายสินค้า การเรียนรู้ ออนไลน์ หรือการดูหนังฟังเพลง เป็นต้น ซ่ึงบริการที่ได้กล่าวมาน้ันถูกพัฒนาข้ึนมาในลักษณะ โปรแกรมบนเว็บ (Web Based Application) ทกี่ ารแสดงผลของโปรแกรมจะอยู่บนเวบ็ เบราว์เซอร์ท่ี ผู้ใช้สามารถเข้าถึงได้ง่ายผ่านเครอื ข่ายอินเทอร์เน็ต เนื้อหาภายในบทจะเก่ียวกับท่ีมาและความหมาย ของอินเทอร์เน็ต หลักการทางานของเวิลด์ไวด์เว็บ บริการท่ีมีบนอินเทอร์เน็ต รายละเอียดของเว็บ เบราว์เซอรแ์ ละเวบ็ เซริ ์ฟเวอร์ ยอู ารแ์ อลหรือที่อยู่ของเวบ็ ไซต์ เอชทที ีพีทไี่ ด้จัดเตรียมส่วนตอ่ ประสาน (Interface) ไว้สาหรับส่ือสารระหว่างเว็บเบราว์เซอร์กับเว็บเซิร์ฟเวอร์ ภาษาท่ีใช้ในการเขียน โปรแกรม นั้นคือภาษา HTML และภาษา PHP ท้ายบทเป็นการเตรียมความพร้อมในการเขียน โปรแกรม ซ่ึงเป็นเน้ือหาพื้นฐานท่ีนักเขียนโปรแกรมจาเป็นต้องเรียนรู้ก่อนจะศึกษาภาษา PHP ซ่ึงมี ลักษณะของการเขียนโปรแกรมบนเว็บและยังเป็นพื้นฐานในการเรียนรู้การเขียนโปรแกรมบนเว็บใ น บทถดั ไป อินเทอร์เนต็ อินเทอร์เน็ต (Internet) คาว่า Internet มาจากคาว่า Interconnection network เป็น เครือข่ายคอมพิวเตอร์ขนาดใหญ่ที่ประกอบด้วยเครือข่ายย่อยจานวนมากที่มีการเช่ือมต่อกันด้วยโพร โทคอลทซี ีพ/ี ไอพี (TCP/IP) ซงึ่ เปน็ โพรโทคอลที่ถกู ใช้ในการเชื่อมต่อข้อมูลระหวา่ งเคร่ืองคอมพิวเตอร์ ต้นทางและปลายทางในเครือข่าย ทาให้สามารถติดต่อสือ่ สารและทางานรว่ มกันได้อย่างดี (สาขาวิชา วิทยาศาสตรแ์ ละเทคโนโลยี, 2556: 3-9) อินเทอร์เน็ตกาเนิดข้ึนครั้งแรกในประเทศสหรัฐอเมริกา เม่ือปี พ.ศ. 2512 โดยองค์กรทาง ทหารของสหรัฐอเมริกา ช่ือว่า ยู.เอส.ดีเฟนซ์ ดีพาร์ทเมนท์ ( U.S. Defence Department ) เป็นผู้ คิดค้นระบบขึ้นมา มีวัตถุประสงค์เพ่ือให้มีระบบเครือข่ายที่ไม่มีวันตายแม้จะมีสงคราม ระบบการ สื่อสารถูกทาลายหรือตัดขาด แต่ระบบเครือข่ายแบบน้ียังทางานได้ ซ่ึงระบบดังกล่าวจะใช้วิธีการส่ง ข้อมูลในรปู ของคลืน่ ไมโครเวฟ ฝ่ายวิจยั ขององค์กรจงึ ได้จัดตัง้ ระบบเน็ตเวริ์กขึ้นมา เรยี กวา่ ARPAnet ย่อมาจากคาว่า Advance Research Project Agency net ซึ่งประสบความสาเร็จและได้รับความ นิยมในหมู่ของหน่วยงานทหาร องค์กร รัฐบาล และสถาบันการศึกษาต่างๆ เป็นอย่างมาก เมื่อ ARPAnet ประสบความสาเร็จ กม็ ีองค์กรมหาวิทยาลยั ต่างๆ ใหค้ วามสนใจเข้ามาร่วมในโครงข่ายมาก ข้ึน โดยเน้นการรับส่งจดหมายอิเล็กทรอนิกส์ ( Electronic Mail ) ระหว่างกันเป็นหลัก ต่อมาก็ได้ ขยายการบรกิ ารไปถงึ การส่งแฟม้ ข้อมลู ข่าวสารและส่งขา่ วสารความรทู้ ่วั ไป แตไ่ ม่ได้ใชใ้ นเชิงพาณชิ ย์

48 เนน้ การใหบ้ รกิ ารดา้ นวิชาการเป็นหลัก ในปี พ.ศ. 2523 คนทัว่ ไปเริม่ สนใจอินเทอรเ์ นต็ มากขึน้ มกี าร นาอินเทอร์เน็ตมาใช้ในเชิงพาณิชย์ มีการทาธุรกิจบนอินเทอร์เน็ต บริษัท ห้างร้านต่างๆ ก็เข้าร่วม เครอื ข่ายอนิ เทอร์เนต็ มากขึ้น (ประสาท เนืองเฉลิม, 2557: 45-46) ประเทศไทยได้เร่ิมติดต่อกับอินเทอร์เน็ตในปี พ.ศ. 2530 ในลักษณะการใช้บริการ จดหมาย อิเล็กทรอนิกส์แบบแลกเปล่ียนอีเมลเป็นคร้ังแรก โดยเร่ิมที่มหาวิทยาลัยสงขลานครินทร์ วิทยาเขต หาดใหญ่ (Prince of Songkla University) และสถาบันเทคโนโลยีแห่งเอเชียหรือสถาบันเอไอที ( AIT ) ภายใต้โครงการความร่วมมือระหว่างประเทศไทยและออสเตรเลีย (โครงการ IDP) ซึ่งเป็นการ ติดต่อเชื่อมโยงโดยสายโทรศัพท์ จนกระท่ังปี พ.ศ. 2531 มหาวิทยาลัยสงขลานครินทร์ วิทยาเขต หาดใหญ่ ได้ย่ืนขอที่อยู่อินเทอร์เน็ตในประเทศไทย โดยได้รับท่ีอยู่อินเทอร์เน็ตเป็น Sritrang.psu.th ซ่ึงนับเป็นที่อยู่อินเทอร์เน็ตแห่งแรกของประเทศไทย ต่อมาปี พ.ศ. 2534 บริษัท DEC (Thailand) จากัดได้ขอที่อยู่อินเทอร์เน็ตเพ่ือใช้ประโยชน์ภายในของบริษัท โดยได้รับที่อยู่อินเทอร์เน็ตเป็น dect.co.th โดยทค่ี า “th” เป็นส่วนทเี่ รียกวา่ โดเมน (Domain) ซ่ึงเป็นสว่ นทแ่ี สดงโซนของเครือข่าย อนิ เทอรเ์ น็ตในประเทศไทย โดยยอ่ มาจากคาว่า Thailand กล่าวไดว้ ่าการใชง้ านอนิ เทอรเ์ น็ตชนิดเต็ม รูปแบบตลอด 24 ชั่วโมง ในประเทศไทยเกิดขึ้นเป็นคร้ังแรกเม่ือเดือน กรกฎาคม ปี พ.ศ. 2535 โดย สถาบันวิทยบริการ จุฬาลงกรณ์มหาวิทยาลัยได้เช่าวงจรสื่อสารความเร็ว 9600 บิตต่อวินาที จาก การสื่อสารแห่งประเทศไทยเพื่อเชื่อมเข้าสู่อินเทอร์เน็ตท่ีบริษัท ยูยูเน็ตเทคโนโลยี (UUNET Technologies) ประเทศสหรัฐอเมริกา ในปีเดียวกัน ได้มีหน่วยงานที่เช่ือมต่อแบบออนไลน์กับ เครือข่ายอินเทอร์เน็ตผ่านจุฬาลงกรณ์มหาวิทยาลัยหลายแห่งด้วยกัน ได้แก่ สถาบันเทคโนโลยีแห่ง เอเชีย ( AIT ) มหาวิทยาลัยมหิดล สถาบันเทคโนโลยีพระจอมเกล้า เจ้าคุณทหารลาดกระบัง มหาวิทยาลัยเชียงใหม่ และมหาวิทยาลัยอัสสัมชัญบริหารธุรกิจ โดยเรียกเครือข่ายนี้ว่าเครือข่าย “ไทยเน็ต” (THAInet) ซึ่งนับเป็นเครือข่ายที่มี “เกตเวย์” ( Gateway ) หรือประตูสู่เครือข่าย อินเทอร์เน็ตเป็นแห่งแรกของประเทศไทย ปัจจุบันได้มีผู้รู้จักและใช้อินเทอร์เน็ตมากข้ึน มีอัตราการ เติบโตมากกว่า 100% สมาชิกของอินเทอร์เน็ตขยายจาก อาจารย์และนิสิตนักศึกษาใน ระดบั อดุ มศึกษาไปส่ปู ระชาชนทัว่ ไป (ประสาท เนืองเฉลมิ , 2557: 46-50)

49 ภาพที่ 3.1 เครือขา่ ยอินเทอร์เนต็ ทีม่ า (Redes Estruturadas, 2016) เวลิ ด์ไวดเ์ ว็บ ( World Wide Web : WWW) การใช้หลักการแบบไคแอนต์-เซิร์ฟเวอร์ ทาให้อินเทอร์เน็ตมีการให้บริการต่างๆ มากมาย ผู้ใช้บริการสามารถเรียกใช้บริการเหล่านี้จากระยะไกลได้ เครือข่ายอินเทอร์เน็ตจึงเป็นเครือข่ายที่ไม่ ขึ้นอยู่กับระยะทาง แม้ว่าผู้ใช้บริการจะอยู่คนละซีกโลก และมีระบบการทางานเป็นแบบโลกาภิวัฒน์ คอื สามารถติดต่อถงึ กนั ได้ทั่วโลก ประมาณปี พ.ศ. ๒๕๓๔ มีการพัฒนาระบบการเชื่อมโยงข่าวสารแบบไฮเปอร์เทกซ์บน เครือข่าย ส่วนของไฮเปอร์เทกซ์เป็นเอกสารที่เช่ือมโยงกันได้ท่ัวทั้งเครือข่าย จึงเรียกระบบสาร เช่ือมโยงข้อมูลข่าวสารนี้ว่า WWW (World Wide Web) ระบบข่าวสารเวิลด์ไวด์เว็บ เป็นระบบ ข่าวสารท่ีมีประโยชน์มาก มีการใช้กันอย่างกว้างขวาง และเป็นที่นิยมของผู้ใช้อินเทอร์เน็ต หาก ย้อนกลับไปในอดีตความคิดในเร่ืองไฮเปอร์เท็กซ์มีมานานแล้ว โดยเฉพาะในสมัยท่ีบริษัทแอปเปิล คอมพิวเตอร์ สร้างเครื่องแมคอินทอช และระบบกราฟิกยูสเซอร์อินเทอร์เฟส (GUI) บริษัทแอปเปิล คอมพิวเตอร์ได้สร้างรูปแบบของการเก็บข้อมูลแบบไฮเปอร์เท็กซ์ไว้ ระบบการเก็บข้อมูลแบบ ไฮเปอร์เท็กซ์ จึงเป็นที่รู้จักกันดีในกลุ่มผู้ใช้เคร่ืองแอปเปิลแมคอินทอช เม่ืออินเทอร์เน็ตแพร่หลาย ความคิดในการทาไฮเปอร์เท็กซ์มาประยุกต์บนเครือข่ายก็เร่ิมเป็นรูปร่าง โดยมีการพัฒนากลไกข้ึนมา ๓ ส่วน ส่วนแรกคือ ตัวเนื้อหา หรือข้อมูล ซึ่งก็คือ ตัวหนังสืออิเล็กทรอนิกส์ ท่ีรวมรูปภาพ เสียง และ ภาพเคล่ือนไหวไว้ หรือมีลักษณะเป็นแบบมัลติมีเดีย หนังสืออิเล็กทรอนิกส์นี้มีลักษณะเฉพาะตาม มาตรฐานท่ีกาหนด โดยเน้นการผลิตตัวหนังสอื อิเล็กทรอนิกส์ท่ีแยกออกไป การจัดรูปแบบหนังสือใช้ มาตรฐาน HTML ส่วนท่ีสองคือ ส่วนจัดการหนังสืออิเล็กทรอนิกส์และเช่ือมโยงบนเครือข่าย ซ่ึงได้มี

50 การกาหนดโพรโทคอลพิเศษ สาหรับการเช่อื มโยงบนเครือข่ายคอมพวิ เตอร์ เรยี กว่า โพรโทคอล http (hypertext transfer protocol) โพรโทคอลน้ีมีลักษณะทางานร่วมกันได้อย่างมีประสิทธิภาพ สว่ นที่ สามคือ เครื่องเปิดอ่านหนังสือ หรือท่ีเรียกว่า เบราว์เซอร์ (browser) เคร่ืองเปิดอ่านหนังสือจะ เช่อื มโยงเขา้ สูเ่ ครือข่ายตามโพรโทคอลท่ีกาหนด และเช่ือมโยงเพ่ือนาขอ้ มูลหนงั สอื (ไฮเปอรเ์ ท็กซ)์ มา แสดงผลบราวเซอร์สามารถแสดงผลแบบมลั ติมเี ดียได้ เมื่อรวมทั้ง ๓ สว่ นนเ้ี ข้าด้วยกัน จงึ กลายมาเป็น ส่ิงที่มปี ระโยชนอ์ ยา่ งมากมาย เราเรยี กระบบข่าวสารทเี่ ช่ือมโยงเป็นเครอื ขา่ ยวา่ เวิลด์ไวด์เวบ็ (โครงการสารานุกรมไทยสาหรบั เยาวชน, 2559) ภาพที่ 3.2 บรกิ ารเวลิ ดไ์ วดเ์ ว็บ ทมี่ า (123RF, 2016) เวบ็ เบราวเ์ ซอร์ (Web Browsers) เว็บเบราว์เซอร์หรือโปรแกรมค้นดูเว็บ คือโปรแกรมคอมพิวเตอร์ที่ผู้ใช้สามารถดูข้อมูลและ โตต้ อบกับข้อมลู สารสนเทศทจี่ ดั เกบ็ ในเว็บเพจท่สี ร้างด้วยภาษาเฉพาะ เช่น ภาษาเอชทีเอ็มแอล และ ภาษาพีเอชพี เป็นต้น ที่จัดเก็บไว้ท่ีเว็บเซอร์วิซ เว็บเซิร์ฟเวอร์ หรือระบบคลังข้อมูลอ่ืน ๆ โดย โปรแกรมค้นดูเว็บเปรียบเสมือนเคร่ืองมือในการติดต่อกับเครือข่ายคอมพิวเตอร์ขนาดใหญ่ที่เรียกว่า เวิลดไ์ วด์เวบ็ ส่วนเว็บเบราว์เซอรต์ วั แรกของโลกช่ือ “เวิลด์ไวดเ์ วบ็ ” ซ่งึ ในปจั จบุ นั มเี วบ็ เบราวเ์ ซอร์ให้ ใช้งานดังนี้ กูเกิลโครม (Google Chrome) มอซิลลาไฟร์ฟอกซ์ (Mozilla Firefox) และอินเทอร์เน็ต เอกซ์พลอเรอร์ (Internet Explorer : IE) เปน็ ต้น (Robert W.Sebesta, 2002: 7)

51 ภาพที่ 3.3 โปรแกรมเว็บเบราวเ์ ซอร์ ท่ีมา (Peter O'Shaughnessy, 2016) เวบ็ เซิรฟ์ เวอร์ (Web Servers) เว็บเซร์ฟเวอร์เป็นเครื่องคอมพิวเตอร์ประสิทธิภาพสูงที่ทาหน้าท่ีเป็นแหล่งเก็บเว็บไซต์ที่ทุก คนสามารถใช้เว็บเบราว์เซอร์ติดต่อเพ่ือขอดูข้อมูลภายในเว็บเพจได้ เว็บเซร์ฟเวอร์ส่วนใหญ่จะติดต่อ กบั เครอื ขา่ ยอนิ เทอรเ์ นต็ ตลอดเวลา โดยใชส้ ายสง่ ขอ้ มลู ความเร็วสูงเพ่อื ใหบ้ รกิ ารผทู้ ่ีเช่อื มต่อเข้าเย่ียม ชมเวบ็ ไซต์ (Robert W.Sebesta, 2002: 8; Web Developers Notes, 2016) ภาพที่ 3.4 ตัวอย่างเว็บเซริ ฟ์ เวอรท์ ีใ่ ช้งานอยู่ในปจั จุบัน ทมี่ า (fastwebhost, 2016) ยูอารแ์ อล (Uniform Resource Locators : URL) ตัวช้ีแหล่งในอินเทอร์เน็ต หรือ โปรแกรมชี้แหล่งทรัพยากรสากล (อังกฤษ: Uniform Resource Locator, Universal Resource Locator) เรียกโดยย่อว่า ยูอาร์แอล (อังกฤษ: URL) คือ ตัวระบุแหล่งทรัพยากรสากล (URI) ประเภทหน่ึง ซง่ึ ใชส้ าหรบั ระบุแหลง่ ที่อยู่ของทรัพยากรท่ีต้องการ และมีกลไกบางอย่างสาหรับดึงข้อมูลทรัพยากรนั้นมา ในการใช้ในเอกสารทางเทคนิคและการ อภิปรายท่ัวไป มักจะใช้ยูอาร์แอลแทนความหมายที่คล้ายกับยูอาร์ไอ ซ่ึงไม่ใช่ความหมายที่ถูกต้อง และอาจทาให้เกิดความสับสนในภาษาพูดท่ัวไป ยูอาร์แอลอาจหมายถึง ท่ีอยู่บนเว็บ หรือ ท่ีอยู่ อนิ เทอร์เนต็ ก็ได้ ซง่ึ ปกตแิ ล้วเรามักพมิ พ์ยูอารแ์ อลในแถบที่อยขู่ องเวบ็ เบราวเ์ ซอร์เพ่ือเรยี กข้อมูลจาก เว็บไซต์ทัว่ ไป (Berners-Lee, 1994)

52 แถบที่อยู่ ระบุ URL ภาพที่ 3.5 การพิมพย์ อู าร์แอล โพรโทคอลเอชทที พี ี (The Hypertext Transfer Protocol : HTTP) โพรโทคอลเอชทีทีพี ถูกพัฒนาข้ึนโดย World Wide Web Consortium (W3C) กับ Internet Engineering Task Force (IETF) ในปี พ.ศ. 2542 เป็นชดุ เอกสารที่เรียกว่า RFC 2616 ซง่ึ เป็นข้อกาหนดของ HTTP/1.1 รุ่นที่ใช้กันอย่างกว้างขวางในปัจจุบัน มีหน้าท่ีหลักในการกาหนด กฎเกณฑ์ข้ึนมาเพื่อเป็นมาตรฐานสาหรับควบคุมดูแลการแลกเปล่ียนหรือส่งข้อมูลระหว่างเว็บเพจ หรือโปรแกรมเว็บเบราว์เซอร์จากเคร่ืองไอคเอ็นต์กับเครื่องให้บริการ (Web Server) ก่อนการ ติดต่อส่ือสารกันโพรโทคอลจะทาการส่งการร้องขอข้อมูลเพ่ือสร้างการเชื่อมต่อ ซึ่งโพรโทคอลเป็นตัว ช่วยให้เคร่ืองคอมพิวเตอร์ที่มีระบบแตกต่างกันสามารถสื่อสารกันได้อย่างเข้าใจ ส่วนภาษา HTML ก็ สามารถทางานบนแพลตฟอร์มท่ีต่างกันได้ น่ันคือภาษา HTML สามารถทางานในเว็บเบราว์เซอร์ได้ ทุกประเภท รูปแบบของข้อมูลท่ีส่งผ่านโพรโทคอลเอชทีทีพี เช่น ข้อความ ภาพ หรือเสียงเป็น ตน้ (สาขาวชิ าวิทยาศาสตรแ์ ละเทคโนโลยี, 2556: 1-5) ภาษาท่ใี ชใ้ นการเขยี นโปรแกรม ภาษาท่ีใชส้ าหรบั เขียนโปรแกรมในลักษณะเวบ็ แอพพลิเคชนั ทีต่ ้องศกึ ษามี 2 ภาษาดังนี้ 1. ภาษา HTML เป็นภาษาพื้นฐานสาคัญในการใช้สร้างเว็บเพจ มีโครงสร้างการเขียนอย่าง ชัดเจนและเข้าใจง่าย โดยมีการระบุส่วนของเน้ือหาและการจัดการรูปแบบการนาเสนอข้อมูลบนเว็บ ภาษาเอชทีเอ็มแอลถูกพัฒนาข้ึนโดย ทิม เบอร์เนอร์ส ลี (Tim Berners Lee) ซ่ึงทางานภายใต้บริษัท ไอบีเอ็ม (IBM) ปัจจุบัน HTML ถือเป็นมาตรฐานหน่ึงของไอเอสโอ ซึ่งควบคุมโดยองค์กร World Wide Web Consortium (W3C) ซ่ึงเป็นองค์กรท่ีกาหนดมาตรฐานเพื่อให้องค์กรขนาดใหญ่นา มาตรฐานดังกล่าวไปใชใ้ นการจัดรูปแบบและหมวดหมูเ่ อกสารออนไลน์ทม่ี ีจานวนมากในการใช้งานให้ เป็นมาตรฐานเดียวกัน สามารถเชื่อมโยง เข้าใจความหมาย และทางานร่วมกันได้ (สาขาวิชา วทิ ยาศาสตรแ์ ละเทคโนโลยี, 2556: 4_11-4_15; Robert W.Sebesta, 2002: 27-31) ภาษา HTML จะแสดงโครงสร้างของข้อมูลในการแสดงหัวข้อ ย่อหน้า รายการ ลิงก์ รวมถึงการสร้างแบบฟอร์ม การเช่ือมโยงภาพหรือวิดีโอ โครงสร้างของภาษาจะอยู่ภายในวงเล็บ สามเหลี่ยม (< >) สามารถเขยี นคาส่ังเปน็ ตวั พิมพ์ใหญห่ รือพมิ พเ์ ล็กก็ได้ เช่น <html> หรือ <HTML> ซ่งึ ทั้งสองคาสงั่ นีม้ ีความหมายเหมือนกนั โดยจะเรียกคาสั่งของภาษา HTML ว่าแท็ก (tag) ซึ่งนาไปใช้

53 ในการกาหนดรูปแบบของข้อความบนเว็บเพจที่สร้างขึ้น ภาพที่ 3.6 แสดงโครงสร้างและแท็ก มาตรฐานของภาษา HTML <html> <head> <title>ชอื่ เวบ็ เพจหรอื หวั เรอื่ ง</title> </head> <body> ขอ้ ความทต่ี อ้ งการแสดงบนเวบ็ เพจ </body> </html> ภาพที่ 3.6 โครงสรา้ งและแท็กมาตรฐานภาษา HTML จากภาพข้างต้นแท็กพื้นฐานข้องภาษา HTML มี <html>…</html> กาหนดจุดเริ่มต้น ของภาษา แท็ก <head>…</head> ใช้สาหรับแสดงส่วนแถบหัวของเว็บเบราว์เซอร์ แท็ก <title>…</title> จะต้องกาหนดไว้ระหว่างแท็ก <head> เพ่ือระบุข้อความท่ีจะแสดงบนแถบหัว ส่วนแท็ก <body>…</body> พ้ืนท่ีบริเวณนม้ี ไี ว้เพอื่ แสดงขอ้ ความ รูปภาพ วดิ โี อต่างๆ บนเว็บเพจ 2. ภาษา PHP ภาษา PHP ถูกพัฒนาข้ึนโดย Rasmas Lerdorf ในปี 1994 เพ่ือใช้เป็นเคร่ืองมือในการ พัฒนาเว็บไซต์ส่วนตัว โดยพัฒนามาจากภาษา C ท่ีสามารถแยกประมวลผลรหัสคาส่ังส่วนของภาษา HTML ออกจากสว่ นของภาษา C แลว้ สรา้ งรหัสคาส่งั ของภาษา HTML ขึ้นมาใหม่ โดยตัง้ ชื่อโปรแกรม น้ีว่า Personal Home Page (PHP tools) และได้แจกจ่ายรหัสคาส่ังออกไปให้ผู้สนใจหรือนักเขียน โปรแกรมได้ใช้งานฟรี ต่อมาจึงได้เร่ิมเปิดให้ผู้สนใจเข้ามาร่วมพัฒนาต่อในลักษณะ Open Source จนได้ภาษา PHP รุ่น PHP/FI จนกระท้ังในปี 1997 ถึง 1999 นักเขียนโปรแกรมชื่อ Zeev Suraski และ Andi Gutmans ได้ร่วมกันปรับปรุงพัฒนาด้านประสิทธิภาพ การสนับสนุนการเขียนโปรแกรม เชิงวัตถุจนได้ภาษา PHP รุ่น PHP 3 ซ่ึงเป็นรุ่นท่ีได้รับความนิยมเป็นอย่างมาก และยังมีการพัฒนา อย่างต่อเนื่อง จนในปัจจุบันภาษา PHP ได้ถูกพัฒนาจนถึงรุ่น PHP 7 ที่นักเขียนโปรแกรมสามารถ ดาวน์โหลดมาใช้งานได้ฟรีจากเว็บไซต์ http://php.net/downloads.php และยังสามารถศึกษา รายละเอยี ดการติดต้ังโปรแกรมและการใชง้ านได้ที่ http://php.net/docs.php จึงเป็นอีกภาษาหน่ึง ทีน่ า่ จะเป็นทางเลอื กสาหรับนักเขยี นโปรแกรม เนอ่ื งจากเป็นภาษาท่ีเขยี นงา่ ย สามารถนาไปใช้พัฒนา เว็บเพจที่ต้องการตอบสนองกับผู้ใช้ อีกท้ังยังสามารถใช้ในการนาข้อมูลจากฐานข้อมูลมาแสดงผลใน เว็บเพจได้ จึงเหมาะกับการนาไปใช้ในการสร้างเว็บแอพพลิเคชันเพ่ือใช้งานในองค์กร ระบบพาณิชย์ อิเลก็ ทรอนิคส์ เป็นตน้

54 การเตรยี มความพรอ้ มในการเขยี นโปรแกรมภาษา PHP การเขียนโปรแกรมภาษา PHP ส่ิงท่ีนักเขียนโปรแกรมจะต้องเตรียมมีดังนี้ เคร่ืองเซิร์ฟเวอร์ (สามารถใช้เครื่องคอมพิวเตอร์ส่วนบุคคลได้) เครื่องไคลเอ็นต์ (อาจใช้เครื่องเดียวกันกับเคร่ือง เซิร์ฟเวอรก์ ไ็ ด)้ โปรแกรมเวบ็ เซิรฟเวอร์ เชน่ Apache ซ่งึ ทางานไดด้ ีกับภาษา PHP เป็นตน้ โปรแกรม PHP Engine หรือตัวแปลภาษา PHP โปรแกรมฐานข้อมูล เช่น MySQL, Oracle หรือ MS Access เป็นต้น โปรแกรม Web Authoring หรือ Editor ที่ใช้สาหรับสร้างเว็บเพจด้วยภาษา PHP เช่น Dreamweaver, Editplus หรือ Notepad เป็นตน้ สุดทา้ ยเม่อื ต้องการดูผลลพั ธข์ องโปรแกรมจะต้อง ดูผ่านโปรแกรมเว็บเบราว์เซอร์ เช่น Google Chrome, Internet Explorer (IE) หรือ Firefox เป็น ต้น สาหรับรายละเอียดการติดตั้งโปรแกรมเพ่ือใช้ในการพัฒนาโปรแกรมภาษา PHP น้ันสามารถ ศึกษาได้จาก https://www.appserv.org/th ซึ่งเน้ือหาภายในเล่มนี้เลือกใช้ชุดโปรแกรม Appserv ที่รวมซอฟร์แวร์ประเภท Open Source หลายอย่างมารวมกันโดยมี Package หลักดังน้ี Apache, PHP Engine, MySQL และ phpMyAdmin (appserv.org, 2559; Robert W.Sebesta, 2002: 461- 462) การเขยี นและทดสอบการทางานของโปรแกรมภาษา PHP สามารถดาเนินการได้ดังน้ี 1. เปิดโปรแกรม DreamweaverCS6 สาหรับเขียนรหัสคาสั่ง จากน้ันบันทึกไฟล์ให้มี นามสกุลเปน็ .php โดยเกบ็ ไฟล์ไวภ้ ายใต้ “AppServ\\www” ซง่ึ สามารถสรา้ งโฟล์เดอร์ย่อยข้ึนมาได้ ดังแสดงตามภาพที่ 3.7 1.พิมพ์รหัสคาสั่งภาษา PHP 2. บนั ทึกไฟล์ เลือกเมนู SAVE 3.ไฟลม์ นี ามสกลุ .php 4.กดปมุ่ Save ภาพท่ี 3.7 การเขียนโปรแกรมภาษา PHP ดว้ ย DreamweaverCS6

55 2. การทดสอบการทางานของโปรแกรม เมื่อเขียนโปรแกรมเรียบร้อยแล้วและต้องการ ทดสอบและดูผลลพั ธ์การทางานผ่านทางโปรแกรมเวบ็ เบราวเ์ ซอร์ โดยพิมพ์ “localhost/” ตามด้วย ช่ือไฟล์ เช่น ถ้าไฟล์ท่ีต้องการทดสอบการทางานชื่อ test.php ให้พิมพ์ “localhost/test.php” ที่ ชอ่ งระบยุ อู ารแ์ อลของเวบ็ เบราวเ์ ซอร์ ดังภาพท่ี 3.8 1.พมิ พ์ “localhost/test.php” 2.ผลลัพธข์ องโปรแกรม ภาพท่ี 3.8 การทดสอบโปรแกรมภาษา PHP ผา่ นทางเว็บเบราวเ์ ซอร์ สรปุ อนิ เทอร์เนต็ เปน็ เครอื ขา่ ยคอมพวิ เตอร์ขนาดใหญ่ที่ประกอบดว้ ยเครือข่ายย่อยจานวนมากท่ีมี การเชื่อมต่อกันด้วยโพรโทคอลทีซีพี/ไอพี (TCP/IP) และมีบริการท่ีเรียกว่า เวิลด์ไวด์เว็บ ซึ่งมีการ ให้บริการต่างๆ มากมาย ผู้ใช้บริการสามารถเรียกใช้บริการเหล่านี้จากระยะไกลได้ เครือข่าย อินเทอร์เน็ตจึงเป็นเครือข่ายที่ไมข่ ้ึนอยู่กับระยะทาง แม้วา่ ผูใ้ ช้บริการจะอยู่คนละซีกโลก ผใู้ ชส้ ามารถ ใชโ้ ปรแกรมเว็บเบราว์เซอร์ในการใช้บริการเวิลด์ไวด์เว็บ ทเ่ี ก็บอยูใ่ นเครื่องคอมพิวเตอร์ประสิทธิภาพ สูงท่ีเรียกว่า เว็บเซอร์ฟเวอร์ ในการเข้าถึงเว็บไซต์ผู้ใช้บริการสามารถพิมพ์ยูอาร์แอลของเว็บไซต์ที่ “แถวท่ีอยู่” ของเว็บเบราว์เซอร์ สาหรับภาษาพื้นฐานท่ีใช้ในการเขียนเว็บเพจคือภาษา HTML และ เพ่อื ใหเ้ ว็บเพจทีส่ รา้ งขึ้นมปี ฏสิ ัมพันธก์ ับผู้ใชส้ ามารถแทรกสครปิ ต์ภาษา PHP ลงไปในโปรแกรมภาษา HTML ได้ ส่วนเคร่อื งมอื ที่ใชใ้ นการเขียนเว็บคือโปรแกรมประเภท Web Authoring หรือ Editor เชน่ Dreamweaver หรือ Notepad เป็นต้น แบบฝกึ หัด 1. จงบอกความหมายและยกตัวอยา่ งของเวบ็ เบราวเ์ ซอร์ และเว็บเซอร์เวอร์ 2. จงยกตวั อย่างบริการเวลิ ด์ไวด์เวบ็ ทใ่ี ช้ในชีวติ ประจาวนั 3. จงบอกความแตกต่างระหว่างภาษา HTML กับภาษา PHP 4. ใหน้ กั ศึกษาเขยี นโปรแกรมภาษา PHP ดว้ ยโปรแกรม DreamweaverCS6 ในการแสดงรหสั นกั ศึกษา ชือ่ และนามสกลุ ออกทางเวบ็ เบราว์เซอร์

56 เอกสารอ้างอิง โครงการสารานุกรมไทยสาหรับเยาวชน. (2559). อินเทอร์เนต็ . [ออนไลน์], แหลง่ ท่ีมา HTTP: http://kanchanapisek.or.th/kp6/sub/book/book.php?book=25&chap=6&page=c hap6.htm ประสาท เนอื งเฉลมิ . (2557). อนิ เทอร์เน็ตเพ่อื การเรียนร.ู้ กรงุ เทพฯ: โอเดียนสโตร์. 123RF. (2016). Vector - social network laptop.communication in the global computer networks. 2016, July 25. [online], Available HTTP: https://www.123rf.com/photo_11888394_social-network-laptop- communication-in-the-global-computer-networks.html Aditya varma. (2016). What is Web Server and Different Types of Web Servers?. 2016, July 25. [online], Available HTTP: https://www.fastwebhost.in/blog/ what-is-web-server-and-different-types-of-web-servers/ Appserv. (2559). AppServ คอื อะไร. [ออนไลน์], แหล่งทีม่ า HTTP: https://www.appserv.org/th/ ASAP. (2016). Redes Estruturadas. 2016, July 10. [online], Available HTTP: http://www.asap-mz.com/?page_id=151 Berners-Lee. (1994). Addressing. 2016, July 20. [online], Available HTTP: https://www.w3.org/Addressing/URL/url-spec.txt Peter O'Shaughnessy. (2016). Think you know the top web browsers?. 2016, June 25. [online], Available HTTP: https://medium.com/samsung- internet-dev/think-you-know-the-top-web-browsers-458a0a070175 Robert W.Sebesta. (2006). Programming the World Wide Web 3rd ed. (3nd ed.pp.6- 13,pp.475-519). USA : Pearson Education,Inc. Web Developers Notes. (2016). What is web server – a computer OR a program?. 2016, July 12. [online], Available HTTP: https://www.webdevelopersnotes.com/what-is-web-server

แผนบรหิ ารการสอนประจาบทที่ 4 เนือ้ หาประจาบทท่ี 4 ความรู้เบ้ืองต้นเก่ียวกบั ภาษา PHP หลกั การทางานของภาษา PHP รปู แบบของภาษา การใช้งาน PHP ร่วมกบั HTML การใสค่ าอธิบาย การแสดงผลลัพธ์ ตวั แปรและค่าคงที่ ตัวดาเนนิ การ โครงสรา้ งควบคมุ วัตถุประสงค์เชิงพฤติกรรม เมื่อศึกษาบทเรียนน้แี ลว้ ผูเ้ รียนมีพฤติกรรมดังนี้ 1. อธบิ ายหลกั การทางานของภาษา PHP และรูปแบบของภาษา 2. อธิบายการใช้งานตวั แปร คา่ คงที่ และตัวดาเนนิ การ 3. จาแนกโครงสร้างควบคมุ ประเภทต่างๆ ได้ 4. สามารถเขยี นโปรแกรมภาษา PHP แทรกในไฟล์ HTML ได้ 5. สามารถใส่คาอธบิ ายลงในโปรแกรมทสี่ ร้างข้นึ ได้ 6. สามารถเขียนโปรแกรมแสดงผลลพั ธ์ นาตัวแปรหรอื ค่าคงท่ี และตัวดาเนนิ การไปใชง้ านได้ 7. สามารถเขียนโปรแกรมทน่ี าโครงสรา้ งควบคมุ ประเภทต่างๆ มาใชง้ านได้อย่างเหมาะสม วธิ ีสอนและกจิ กรรมการเรียนการสอน 1. วธิ ีสอน 1.1 บรรยาย และสาธิต 1.2 อภปิ ราย คน้ คว้าเพ่ิมเตมิ 1.3 นักศกึ ษาทาแบบฝกึ หดั และผสู้ อนตรวจแบบฝกึ หัด 1.4 มอบหมายแบบฝกึ หัดเป็นการบ้านเพื่อทบทวนบทเรยี น 2. กิจกรรมการเรยี นการสอน สัปดาห์ 7-9 (12 ชัว่ โมง) 2.1 ผูส้ อนอธิบายและสาธิตเน้ือหา เปดิ โอกาสให้ผ้เู รียนซักถามปัญหาในหัวขอ้ ที่ยัง ไมเ่ ขา้ ใจ ใหผ้ ู้เรยี นค้นควา้ เพ่มิ เตมิ จากอนิ เตอรเ์ น็ตและเอกสารประกอบการสอน อภปิ ราย และสรุป เน้อื หาสาระสาคญั รว่ มกัน

58 2.2 ผเู้ รยี นทาแบบฝกึ หัดประจาบทและตอบคาถามลงใน Google Classroom เพอื่ ให้ผสู้ อนตรวจ อธิบายและชี้แจงคาตอบท่ีถกู ต้อง ส่ือการเรยี นการสอน 1. เอกสารประกอบการสอนการเขยี นโปรแกรมคอมพวิ เตอร์เพ่ืองานสารสนเทศ 1 2. เครือ่ งคอมพิวเตอร์ 3. PowerPoint เนอ้ื หาบทที่ 4 4. สอ่ื ออนไลน์ช่วยสอน : โปรแกรม Google Classroom การวดั ผลและประเมนิ ผล 1. การวัดผล สงั เกตจากการตอบคาถาม ตรวจแบบฝกึ หัด 2. การประเมนิ ผล ผเู้ รียนสามารถตอบคาถามและทาแบบฝึกหดั ไดถ้ กู ตอ้ ง ร้อยละ 80

บทท่ี 4 ความรู้เบอ้ื งตน้ เก่ยี วกบั ภาษา PHP การเขียนโปรแกรมคอมพิวเตอร์ นักเขียนโปรแกรมจาเป็นต้องศึกษารายละเอียดของ ภาษาคอมพิวเตอร์ท่ีจะนามาใช้ในเขียนโปรแกรมระบบงานต่างๆ ตามท่ีต้องการ เพื่อจะได้เข้าใจและ นาไปใช้งานได้อย่างเหมาะสม ในบทน้ีจึงได้กล่าวถึงเน้ือหาพื้นฐานสาหรับการเขียนโปรแกรมด้วย ภาษา PHP ท่ีมีประเด็นเกี่ยวกับหลักการทางานของภาษา PHP รูปแบบของภาษา การใช้งาน PHP ร่วมกับเอกสาร HTML คาสั่งในการใส่คาอธิบายและการแสดงผลลัพธ์ ตัวแปรและค่าคงที่ ตัว ดาเนนิ การ และโครงสรา้ งควบคุมตามหลักไวยกรณ์ของภาษา PHP เพ่ือเปน็ พ้ืนฐานสาหรับการศึกษา เนอื้ หาในบทถัดไป หลักการทางานของภาษา PHP สมศักดิ์ โชคชัยชุติกุล (2550, 15) ได้กล่าวถึงหลักการทางานของภาษา PHP ไว้ว่า ภาษา PHP รุ่นแรกจนถึงรุ่น 3 มีการทางานแบบแปลตามลาดับทีละประโยค (Interpretation process) คือ แปลไปทางานไปตามลาดับคาสั่งเหมือนกับภาษา HTML ตั้งแต่รุ่น 4 เป็นต้นมามีกระบวนการ ทางานโดยจะแปล (compile) ทั้งโปรแกรมเก็บไว้ในหน่วยความจาแล้วจึงทางาน ส่งผลให้สคริปต์ใน ส่วนท่ีมีการเรียกใช้ซ้าจะประมวลผลได้เร็วขึ้นมาก การดาเนินการดังกล่าวจะกระทาท่ีฝั่งเซิร์ฟเวอร์ (server side) นั้นคือเมื่อโปรแกรมภาษา PHP ท่ีเก็บอยู่ในเคร่ืองเซิร์ฟเวอร์ถูกเรียกใช้จากเว็บ เบราว์เซอร์ท่ัวไปจากเครื่องไอคเอ็นต์จะประมวลผลและสร้างผลลัพธ์เป็นไฟล์ HTML ส่งมายังเครื่อง ไคลเอ็นต์เพ่อื ใหเ้ วบ็ เบราว์เซอร์แสดงผล ดังภาพท่ี 4.1 1. เครอื่ งไคลเอ็นตส์ ง่ 2.เครอ่ื งเซอร์เวอรต์ รวจสอบ คาร้องไปยงั เคร่อื ง หาสครปิ ต์ PHP เซอรเ์ วอร์ 4.สร้างผลลพั ธ์เป็น 3.ถ้ามีสคริปต์ PHP ไฟล์ HTML ส่งกลบั จะแยกไปประมวลผล ไปยังเครื่องไคลเอน็ ต์ ตามคารอ้ งขอ ภาพที่ 4.1 หลกั การทางานของภาษา PHP (ทม่ี า guru99, 2016)

60 รปู แบบของภาษา ชุดคาสั่งหรือสคริปต์ภาษา PHP สามารถเขียนแทรกไว้ภายในไฟล์ HTML หรือเขียนเฉพาะ สคริปตภ์ าษา PHP หรือเขียนสคริปตเ์ พอ่ื สร้างรหัสคาส่ังของภาษา HTML ก็ไดเ้ ชน่ กนั และตอ้ งบันทา ไฟล์ให้มีนามสกุลเป็น “.php” เช่น ไฟล์ output.php เป็นต้น สาหรับการเขียนสคริปต์ภาษา PHP จะมีแท็กที่ใช้สาหรับบอกจุดเริ่มต้นและสิ้นสุดของคาสั่งภาษา PHP นิยมใช้อยู่ 2 รูปแบบคือ รูปแบบ แรกคอื การเปิดดว้ ยแทก็ <?php ตามด้วยชุดคาส่ังภาษา PHP และปดิ ด้วยแท็ก ?> หรอื รปู แบบท่ีสอง จะเปิดด้วยแท็ก <script language= “php”> ตามด้วยชุดคาสง่ั ภาษา PHP และปิดด้วย </script> ซงึ่ มรี ูปแบบการใชง้ านดังนี้ (สมศักดิ์ โชคชัยชุติกลุ , 2550: 15-16) ตัวอยา่ งท่ี 4.1 การเขียนโปรแกรมเฉพาะสคริปตภ์ าษา PHP โดยใช้แทก็ <?php ... ?> < ?php echo \"Hello everyone\"; ?> จากตัวอย่างที่ 4.1 คาสั่งภาษา PHP ให้แสดงข้อความ “Hello everyone” ออกทางเว็บ เบราว์เซอร์ดว้ ยคาส่ัง echo ตัวอย่างที่ 4.2 การเขียนโปรแกรมเฉพาะสคริปต์ภาษา PHP โดยใช้แท็ก <script language= “php”> ... </script> <script language= “php”> echo \"Hello everyone\"; < / script> จากตัวอย่างที่ 4.2 เป็นคาส่ังท่ีทางานเหมือนกับตัวอย่างที่ 4.1 แต่ต่างกันตรงการนาแท็กมา ใชเ้ พอื่ บอกจุดเร่มิ ตน้ และจดุ สิน้ สดุ ของคาส่ังภาษา PHP ตัวอยา่ งที่ 4.3 การแทรกสคริปต์ภาษา PHP ลงไปในไฟลภ์ าษา HTML < html> สครปิ ตภ์ าษา PHP < body> < h1> My first PHP script< / h1> < ?php echo \"Hello Everyone\"; ?> < / body> < /html>

61 จากตัวอย่างท่ี 4.3 สามารถแทรกสคริปต์ภาษา PHP ไว้ในไฟล์ภาษา HTML โดยเปิดแท็ก <?php เพื่อกาหนดจุดเรม่ิ ต้นของสครปิ ต์ และปดิ ดว้ ยแทก็ ?> ในการกาหนดจุดสน้ิ สดุ ของสครปิ ต์ ตัวอยา่ งท่ี 4.4 การเขียนโปรแกรมเฉพาะคาส่ังภาษา PHP เพือ่ สรา้ งรหสั คาส่งั ภาษา HTML < ?php echo “<body>”; echo “<h1>My first PHP script</h1>”; echo “Hello Everyone”; echo “</body>”; ?> จากตวั อยา่ งที่ 4.4 เป็นการเขียนโปรแกรมเฉพาะสคริปตภ์ าษา PHP โดยสามารถเขียนให้ สรา้ งรหัสชดุ คาสง่ั ภาษา HTML ผลการประมวลผลจะเหมือนกับการเขียนโปรแกรมเฉพาะสคริปต์ ภาษา HTML ตวั แปร (Variables) และค่าคงท่ี (Constant) ระบบคอมพิวเตอร์เม่ือจะประมวลผลกระบวนการใดๆ ก็ตามจะต้องมีการเก็บข้อมูลหรือ ผลลัพธ์ไว้ในหน่วยความจาเพ่ือจะได้นาข้อมูลเหล่าน้ันไปใช้เป็นข้อมูลนาเข้าของการประมวลผล ของ กระบวนการถัดไป จึงต้องมีการจัดสรรพ้ืนที่หน่วยความจาในการจัดเก็บข้อมูล ซึ่งพ้ืนที่เหล่าน้ันจะ เรยี กวา่ ตัวแปรหรอื ค่าคงที่ โดยมีรายละเอียดดังนี้ 1. ตัวแปร (Variable) หมายถึง ตัวแทนพ้ืนที่ในหน่วยความจาท่ีจัดสรรไว้ใช้เก็บข้อมูลใน ระหว่างการประมวลผลโปรแกรมของระบบคอมพิวเตอร์ ซึ่งมีประเด็นที่สาคัญดังน้ี (สมศักด์ิ โชคชัย ชุตกิ ลุ , 2550: 16-26) 1.1 การประกาศตัวแปร สาหรับการประกาศตัวแปรในภาษา PHP นั้นจะข้ึนต้นด้วย สัญลักษณ์ $ (dollar sign) แล้วจึงตามด้วยชื่อตัวแปร ส่วนการต้ังช่ือตัวแปรจะต้องข้ึนต้นด้วย ตัวอักษร หรือเคร่ืองหมาย _ เท่าน้ัน ตัวอักษรถัดไปของชื่อตัวแปรสามารถเป็นตวั อักษร ตัวเลข หรือ เคร่ืองหมาย _ นามาผสมกันได้ และช่ือของตัวแปรมีคุณสมบัติเป็น case-sensitive น่ันคือ ตัวอักษร ภาษาอังกฤษพิมพ์เล็ก และพิมพ์ใหญ่จะหมายถึงคนละตัว เช่น ตัวแปร $Z กับ $z ในภาษา PHP จะ มองเป็นคนละตัว เป็นต้น เพราะฉะน้ันในการเรียกใช้งานตัวแปรจะต้องพิมพ์ตัวอักษรเป็นพิมพ์ใหญ่ หรือพิมพ์เลก็ ใหถ้ ูกตอ้ ง การประกาศตวั แปรในภาษา PHP ได้แสดงไว้ในดังตวั อยา่ งที่ 4.5 ดงั นี้ ตัวอย่างที่ 4.5 การประกาศตัวแปร < ?php / / Defining variables $txt = \"Hello World!\"; $num = 123456789; $colors = \"Red\"; ?>

62 จากตัวอย่างข้างต้น มีการประกาศตัวแปรไว้ใช้งาน 3 ตัวแปรคือ txt มีค่าเป็น “Hello World!” ตวั แปร num มีคา่ เปน็ “123456789” และตวั แปร colors มคี า่ เป็น “Red” 1.2 ชนิดของขอ้ มลู ขอ้ มลู ที่สามารถจดั เก็บไวใ้ นตวั แปร สามารถแบ่งออกได้ 7 ชนดิ ดังน้ี 1.2.1 ข้อมูลชนิดตรรกะ (boolean) ค่าที่เก็บในตัวแปรประเภทนี้จะเป็นค่าจริง (true) หรอื คา่ เทจ็ (false) นยิ มใช้เพ่ือตรวจสอบเง่อื นไขบางอยา่ งวา่ เปน็ จริงหรอื เท็จ ตัวอยา่ งท่ี 4.6 การประกาศตัวแปรเก็บข้อมลู ชนดิ ตรรกะ < ?php / / Assign the value TRUE to a variable $show_error = true; var _dum p( $show _er r or ) ; ?> จากตัวอย่างข้างต้นประกาศตวั แปร “show_error” เป็นข้อมูลชนิดตรรกะมีค่าเปน็ จริง (true) แล้วเรยี กใช้ฟงั กช์ ัน var_dump() ท่ภี าษา PHP มไี ว้ให้ใชง้ าน ซง่ึ เป็นฟังก์ชนั สาหรับแสดง ชนิดและคา่ ของตวั แปร “show_error” ออกทางเว็บเบราว์เซอร์ 1.2.2 ข้อมลู ชนดิ ตัวเลขจานวนเต็ม (integer) สามารถเก็บค่าเปน็ เลขฐานสิบ ฐาน แปด และฐานสบิ หกได้ โดยถ้าใสเ่ ลข 0 นาหน้าตวั เลขจานวนเต็มเพือ่ บอกว่าเป็นเลขฐานแปด และใส่ 0x เพื่อเป็นการบอกวา่ เปน็ เลขฐานสิบหก ตัวเลขจานวนเต็มแบ่งออกเป็น 3 กลมุ่ คือ จานวนเตม็ บวก (1, 2, 3, ...) จานวนเตม็ ลบ (-1, -2, -3, ...) และจานวนเตม็ ศนู ย์ ตัวอยา่ งท่ี 4.7 การประกาศตัวแปรเก็บข้อมูลชนดิ ตัวเลขจานวนเต็มฐานสบิ ฐานแปด และฐานสบิ หก < ?php $a = 123; / / decimal number var _dum p( $a) ; echo \"< br> \"; $b = -123; / / a negative number var _dum p( $b) ; echo \"< br> \"; $c = 0x1A; / / hexadecimal number var _dum p( $c) ; echo \"< br> \"; $d = 0123; / / octal number var _dum p( $d) ; ?> จากตัวอย่างข้างต้นประกาศตัวแปร “a” เก็บตัวเลขจานวนเต็มบวกฐานสิบ 123 ตามด้วย การเรียกใช้ฟังก์ชัน var_dump() เพ่ือแสดงชนิดและค่าของตัวแปร “a” ออกทางเว็บเบราว์เซอร์ จากนั้นจะแสดง “<br>” ด้วยคาสั่ง echo ซึ่งเป็นแท็กภาษา HTML หมายถึงให้ข้ึนบรรทัดใหม่ ตัว แปร “b” เก็บตัวเลขจานวนเต็มบวกฐานสิบ -123 ต่อด้วยการเรียกใช้ฟังก์ชัน var_dump() เพื่อ แสดงผลชนิดและค่าของตัวแปร “b” ออกทางเว็บเบราว์เซอร์ แล้วให้แสดง “<br>” น้ันคือให้ข้ึน

63 บรรทัดใหม่ ตัวแปร “c” เก็บตัวเลขจานวนเต็มบวกฐานสิบหก 1A ตามด้วยการเรียกใช้ฟังก์ชัน var_dump() ซึ่งจะแสดงผลชนิดและค่าของตัวแปร “c” ออกทางเว็บเบราว์เซอร์ ตามด้วยให้แสดง “<br>” เพ่ือให้ขึ้นบรรทัดใหม่ ตัวแปร “d” เก็บตัวเลขจานวนเต็มบวกฐานแปด 0123 เรียกใช้ ฟังก์ชัน var_dump() เพ่ือแสดงผลชนิดและค่าของตัวแปร “d” ออกทางเว็บเบราว์เซอร์ จบการ ประมวลผลโปรแกรม 1.2.3 ข้อมูลชนิดตัวเลขจานวนทศนิยม (floating point number) หมายถึงตัวเลข ที่มีจุดทศนิยมหลังเลขจานวนเต็ม ตัวเลขแบบเศษส่วน และตัวเลขยกกาลัง เป็นต้น ข้อมูลชนิดน้ีจะ รวมถงึ ข้อมลู ชนดิ float, double และ real พิจารณาตวั อยา่ งท่ี 4.8 ต่อไปน้ี ตัวอยา่ งท่ี 4.8 การประกาศตัวแปรเก็บข้อมลู ชนิดตัวเลขจานวนทศนิยม < ?php ผลลัพธ์ $a = 1.234; var _dum p( $a) ; echo \"< br> \"; $b = 10.2e3; var _dum p( $b) ; ?> จากตัวอย่างที่ 4.8 โปรแกรมประกาศตัวแปร “a” มีค่าเป็นตัวเลขจานวนทศนิยม 1.234 ตามด้วยเรียกใช้ฟังก์ชัน var_dump() ให้แสดงผลชนิดและค่าของตัวแปร “a” คือ “float(1.234)” ออกทางเว็บเบราว์เซอร์ จากนัน้ จะแสดง “<br>” ซ่งึ เปน็ แทก็ ภาษา HTML หมายถงึ ให้ขึ้นบรรทัดใหม่ ตัวแปร “b” เก็บตัวเลขยกกาลัง 10.2x103 ต่อด้วยเรียกใช้ฟังก์ชัน var_dump() เพอื่ แสดงผลชนดิ และค่าของตัวแปร “b” คอื “float(10200)” ออกทางเว็บเบราว์เซอร์ 1.2.4 ข้อมูลชนิดตัวอักษร (string) คือข้อมูลท่ีประกอบด้วยตัวอักษรหลายตัวนามา รวมกัน สาหรับตัวอักษรจะกาหนดค่าอยู่ในเครื่องหมายอัญประกาศ ( “ ” หรือ Double quote) หรอื อัญประการเดี่ยว (‘ ’ หรอื single quote) ทกุ ครั้ง

64 ตัวอย่างที่ 4.9 การประกาศตัวแปรเกบ็ ข้อมูลชนดิ ตวั อกั ษร < ?php $a = 'Hello world!'; echo $a; echo \"< br> \"; $b = \"Hello world!\"; echo $b; echo \"< br> \"; $c = 'Stay here, I \\ 'll be back.'; echo $c; ?> ผลลพั ธ์ จากตัวอย่างข้างต้นประกาศให้ตัวแปร “a”, “b” และ “c” เก็บข้อมูลชนิดตัวอักษร จากนั้น แสดงตวั แปรออกทางเว็บเบราว์เซอร์ด้วยคาส่งั echo พร้อมสั่งใหข้ ึน้ บรรทดั ใหมด่ ว้ ยคาสงั่ echo ตาม ดว้ ย “<br>” กอ่ นแสดงค่าตัวแปรถัดไป 1.2.5 ข้อมูลชนิดอาร์เรย์ (array) หรือตัวแปรชุด จะเก็บข้อมูลชนิดเดียวกันภายใต้ ชื่อตวั แปรเดียวเรียงต่อเน่อื งกันในหน่วยความจา มีดัชนี (index) เปน็ ตัวระบุตาแหน่งของแตล่ ะข้อมูล ทอี่ ย่ภู ายใน ค่าของดัชนีสามารถเปน็ ได้ทัง้ ตวั เลขหรือตัวอักษร โดยดชั นีของอาร์เรย์จะเร่ิมตน้ ตาแหน่ง ที่ศูนย์ สาหรับการประกาศตัวแปรประเภทน้ีสามารถทาได้ 2 รูปแบบคือ รูปแบบที่ไม่กาหนดดัชนี และรูปแบบทกี่ าหนดดัชนี ดังตวั อย่างท่ี 4.10 ตัวอยา่ งท่ี 4.10 การประกาศตัวแปรเก็บข้อมูลชนิดอารเ์ รย์ ทั้งแบบกาหนดและไม่กาหนดคีย์ < ?php $colors = array(\"Red\", \"Green\", \"Blue\"); var _dum p( $color s) ; echo \"< br> \"; ไมก่ ำหนดดชั นี $color_codes = array( \"Red\" = > \"# ff0000\", กำหนดดชั นี \"Green\" = > \"# 00ff00\", \"Blue\" = > \"# 0000ff\" ); var _dum p( $color _codes) ; ผลลพั ธ์ ?> จากตัวอย่างข้างต้นประกาศตัวแปร “colors” ในรูปแบบไม่กาหนดดัชนี มีสมาชิก 3 ตัวคือ “Red”, “Green” และ “Blue” ส่วนตัวแปร “colors_codes” ประกาศแบบกาหนดดัชนี มีดัชนี 3 ค่า คือ “Red”, “Green” และ “Blue” และสมาชิกคือ “#ff0000”, “#00ff00” และ “#0000ff”

65 1.2.6 ข้อมูลชนิดวัตถุ (object) เป็นชนิดข้อมูลที่นาไปใช้ในการเขียนโปรแกรมเชิง วตั ถุ ซึง่ เนื้อหาในเลม่ นเ้ี นน้ การเขยี นโปรแกรมเชิงโครงสรา้ งจึงไมข่ อกลา่ วในรายละเอยี ด 1.2.7 ข้อมูลชนิดนัล (NULL) เป็นตัวแปรที่ไม่มีค่าใดอยู่เลย แต่ไม่ใช่ค่าว่างท่ีเก็บอยู่ ในตัวแปรชนดิ ตัวอักษร ตัวอยา่ งท่ี 4.11 การประกาศตัวแปรเกบ็ ขอ้ มลู ชนดิ นลั < ?php ผลลพั ธ์ $a = NULL; var _dum p( $a) ; echo \"< br> \"; $b = \"Hello World!\"; $b = NULL; var _dum p( $b) ; ?> จากตัวอย่างข้างต้นโปรแกรมประกาศตัวแปร “a” ให้มีค่าเป็น “NULL” ซึ่งเป็นการ กาหนดให้ตัวแปรมีข้อมูลชนิดนัล ตามด้วยเรียกใช้ฟังก์ชัน var_dump() ให้แสดงผลชนิดและค่าของ ตัวแปร “a” ออกทางเว็บเบราว์เซอร์ พร้อมสั่งให้ข้ึนบรรทัดใหม่ด้วยคาส่ัง echo ตามด้วย “<br>” จากน้ันประกาศตัวแปร “b” ให้มีค่าเป็น “Hello world” ถัดมาเปลี่ยนให้มีค่าเป็น “NULL” แล้ว เรียกใชฟ้ งั กช์ ัน var_dump() ให้แสดงผลชนิดและค่าของตวั แปร “b” ออกทางเว็บเบราว์เซอร์ 2. ค่าคงที่ (Constant) เปน็ ตัวแปรทก่ี าหนดขึน้ มาเพอ่ื เกบ็ คา่ ใดๆ ท่ีไมค่ ่อยมีการเปลย่ี นแปลง เม่อื มกี ารประมวลผลโปรแกรม รปู แบบการใช้งานมดี งั นี้ (ชาญชัย ศภุ อรรถกร, 2558: 41) รูปแบบ define (ชอื่ ตวั แปร,คา่ ) ตวั อยา่ งท่ี 4.12 การกาหนดค่าคงท่แี ละการนาตัวแปรคา่ คงทไี่ ปใชง้ าน < ?php / / Defining constant define(\"I S_SI TE_URL\", \"http:/ / is.udru.ac.th/ \"); / / Using constant echo 'Thank you for visiting - ' . I S_SI TE_URL; ?>

66 จากตัวอย่างข้างต้นกาหนดค่าคงท่ีชื่อ “IS_SITE_URL” มีค่าเป็น “http://is.udru.ac.th/” จากนั้นนาค่าคงท่ีไปแสดงร่วมกับข้อความ “Thank you for visiting-” เมื่อประมวลผลโปรแกรมจะ แสดงข้อความ “Thank you for visiting - http://is.udru.ac.th/” ออกทางเวบ็ เบราวเ์ ซอร์ คาสงั่ ภาษา PHP เบื้องตน้ คาสงั่ ในภาษา PHP เบือ้ งต้นทนี่ ักเขียนโปรแกรมมือใหมจ่ าเปน็ ตอ้ งทาความรจู้ กั เนื่องจาก เป็นคาสงั่ ทมี่ ีการใช้งานบ่อยมากมดี งั นี้ (ชาญชยั ศุภอรรถกร, 2558: 19-22; TUTORIAL REPUBLIC, 2016) 1. การใส่คาอธิบาย ในการเขียนโปรแกรมจาเป็นต้องใส่คาอธิบายเพื่อให้เข้าใจชุดคาสั่งของ โปรแกรม โปรแกรมท่ีสร้างขึ้นมาเพื่อดาเนินการเก่ียวกับอะไร ใครเป็นคนสร้าง หรือสร้างเม่ือไร เป็น ตน้ อีกทง้ั ยงั เป็นการช่วยนักเขียนโปรแกรมคนอืน่ ที่เข้ามาดูรหสั คาสั่งเข้าใจรายละเอียดของโปรแกรม ได้ คาอธิบายท่ีใส่ลงไปน้ันจะไม่ถูกประมวลผลและแสดงค่าออกทางเว็บเบราว์เซอร์ ภาษา PHP สามารถใส่คาอธิบายลงในโปรแกรมได้ 2 รูปแบบ คือ การใส่คาอธิบายบรรทัดเดียว และการใส่ คาอธบิ ายหลายบรรทดั ภาพท่ี 4.2 แสดงการใสค่ าอธิบายลงในโปรแกรม แบบหลายบรรทัด แบบบรรทัดเดียว ภาพที่ 4.2 การใส่คาอธบิ ายลงในโปรแกรม ท่มี า: (guru99, 2016)

67 2. การแสดงผลลัพธ์ คาส่ังท่ีใช้ในการแสดงผลลัพธ์ของโปรแกรมภาษา PHP ที่ใช้บ่อยมี 2 คาส่งั ดังนี้ 2.1 คาสง่ั echo เป็นคาสั่งทใี่ ช้เพื่อแสดงข้อความ ตวั เลข คา่ ของตัวแปร และผลลพั ธ์ของ นิพจน์หรอื สมการ ตวั อยา่ งการใช้งานมดี งั นี้ ตัวอยา่ งท่ี 4.13 การใชค้ าส่งั echo แสดงข้อความออกทางเวบ็ เบราวเ์ ซอร์ < ?php / / Displaying string of text echo \"Hello World!\"; ?> จากตัวอย่างที่ 4.13 โปรแกรมจะใช้คาสั่ง echo แสดงข้อความ “Hello World!” ออกทาง เว็บเบราวเ์ ซอร์ ตัวอย่างที่ 4.14 การใชค้ าส่งั echo ในการแสดงรหัสคาสงั่ ภาษา HTML < ?php / / Displaying HTML code echo \"< h4> This is a simple heading.< / h4> \"; echo \"< h4 style= 'color: red;'> This is heading with style.< / h4> \" ?> จากตวั อย่างท่ี 4.14 โปรแกรมใชค้ าส่ัง echo แสดงขอ้ ความ “This is a simple heading.” และ “This is heading with style.” จากการประมวลผลจะแสดงข้อมูลเหมือนกับการใช้แท็กภาษา HTML และเป็นตัวหนาท่ีมีขนาดเป็น <h4> และข้อความ “This is heading with style.” เป็นสี แดง (style= ‘color:red;’) ออกทางเว็บเบราว์เซอร์ ตวั อยา่ งท่ี 4.15 การประกาศตัวแปรและแสดงคา่ ของตวั แปรออกทางเวบ็ เบราว์เซอร์ < ?php / / Defining variables ประกาศตวั แปร $txt = \"Hello World!\"; $num = 123456789; $colors = \"Red\"; / / Displaying variables echo $txt; แสดงค่าของตัวแปร echo \"< br> \";

68 echo $num; echo \"< br> \"; echo $colors; ข้ึนบรรทดั ใหม่ ?> จากตัวอย่างที่ 4.15 โปรแกรมประกาศตัวแปร “txt” ที่มีค่าเป็น “Hello World!” ตัวแปร “num” มีค่าเป็น 123456789 ตัวแปร “colors” มีค่าเป็น “red” จากน้ันใช้คาส่ัง echo แสดงค่าตัวแปรท่ีได้ประกาศไว้ และก่อนแสดงค่าตัวแปรถัดไปจะส่งให้ขึ้นบรรทัดใหม่ตามชุดคาส่ัง echo “<br>” สน้ิ สุดการประมวลผล ตวั อย่างที่ 4.16 นาขอ้ ความกับนพิ จนม์ าแสดงรว่ มกัน ที่คัน่ ดว้ ยคอมมา (,) ข้อความ อยู่ระหวา่ ง “ ” < ?php นิพจน์ echo \"10+ 5= \",10+ 5; ?> จากตวั อย่างที่ 4.16 เมื่อประมวลผลโปรแกรมจะแสดงข้อความ “10+5=” และต่อ ด้วยผลของการบวกของนิพจน์ 10+5 นั้นคือ “15” 2.2 คาสง่ั print เปน็ อีกหนึ่งคาส่ังใหเ้ ลือกใช้เพอ่ื แสดงผลลัพธ์ออกทางเว็บเบราว์เซอร์ ซึ่ง จะทางานเหมอื นคาส่งั echo แต่คาส่ัง print จะไมส่ ามารถแยกข้อความกบั นิพจน์ หรือคา่ ของตัวแปร ใดๆ ดว้ ยเครือ่ งหมายคอมม่า (,) ได้ ตามตวั อย่างที่ 4.17 - 4.19 เปน็ การนาคาสั่ง print มาใชง้ านแทน คาส่ัง echo ซ่ึงเมื่อประมวลผลจะทางานเหมือนกับการใช้คาส่ัง echo ในตัวอย่างท่ี 4.13-4.15 แต่ ตัวอย่างที่ 4.16 ท่ีผ่านมาไม่สามารถใช้คาส่ัง print แทนคาส่ัง echo ได้ เนื่องจากคาส่ัง print ไม่ สามารถแยกข้อความ “10+5=” กบั นพิ จน์ 10+5 ทค่ี ่นั ด้วยคอมม่าได้

69 ตัวอย่างที่ 4.17 แสดงข้อความออกทางเว็บเบราวเ์ ซอร์ทเ่ี หมอื นกบั ตัวอยา่ งท่ี 4.13 < ?php / / Displaying string of text print \"Hello World!\"; ?> ผลลัพธ์ ตวั อยา่ งที่ 4.18 รหสั คาสั่งภาษา HTML ออกทางเว็บเบราว์เซอร์ที่เหมือนกับตัวอย่างที่ 4.14 < ?php / / Displaying HTML code print \"< h4> This is a simple heading.< / h4> \"; print \"< h4 style= 'color: red;'> This is heading with style.< / h4> \" ?> ผลลัพธ์

70 ตัวอย่างที่ 4.19 แสดงคา่ ของตวั แปรออกทางเว็บเบราว์เซอร์ทเ่ี หมอื นกบั ตัวอย่างที่ 4.15 < ?php / / Defining variables $txt = \"Hello World!\"; $num = 123456789; $colors = \"Red\"; / / Displaying variables ผลลพั ธ์ print $txt; print \"< br> \"; print $num; print \"< br> \"; print $colors; ?> ตัวดาเนินการ (Operators) ตัวดาเนินการ หมายถึง สัญลักษณ์ที่ใช้ดาเนินการบางอย่างระหว่างค่าสองค่า หรือตัวแปร สองตัว ซ่ึงในภาษา PHP มีตัวดาเนินการด้วยกันอยู่หลายประเภทที่นักเขียนโปรแกรมจะต้องศึกษา และทาความเข้าใจ เพื่อจะได้นาไปใช้ในการเขียนโปรแกรมได้อย่างถูกต้องและมีประสิทธิภาพ ตัว ดาเนินการแบ่งออกได้ 4 ประเภทดังนี้ (ชาญชัย ศุภอรรถกร, 2558: 43-51; สมศักดิ์ โขคชัยชุติกุล, 2550: 27-33; TUTORIAL REPUBLIC, 2016) 1. ตัวดาเนินการเก่ียวกับตัวเลข (Arithmetic operators) เป็นตัวดาเนินการที่ใช้เกี่ยวกับ การคานวณทางคณติ ศาสตร์ หรอื ดาเนินการกบั คา่ ตวั เลข เชน่ การบวก การลบ การคูณ และการหาร เปน็ ต้น ดงั มรี ายละเอียดตามตารางท่ี 4.1 ตารางท่ี 4.1 ตวั ดาเนนิ การเก่ียวกับตัวเลข ตัวดาเนนิ การ ช่ือ ตวั อยา่ ง ผลลัพธ์ 1+2 3 + การบวก 5-1 4 5*5 25 - การลบ 20/5 4 10%3 1 * การคณู / การหาร % การหารเอาเศษ

71 ++ การเพ่ิมค่าข้ึน 1 5++ 6 -- การลดค่าลง 1 4-- 3 ตวั อยา่ งที่ 4.20 การใช้ตวั ดาเนนิ การเกี่ยวกบั ตวั เลข < ?php $x = 10; $y = 4; echo($x + $y); / / 0utputs: 14 ผลลพั ธ์ echo($x - $y); / / 0utputs: 6 echo($x * $y); / / 0utputs: 40 echo($x / $y); / / 0utputs: 2.5 echo($x % $y); / / 0utputs: 2 ?> จากตัวอย่างขา้ งตน้ กาหนดคา่ ให้ตัวแปร “x” เปน็ 10 ตวั แปร “y” เป็น 4 นาคา่ ของทั้งสอง ตัวแปรมาดาเนินการบวก ลบ คณู หาร และหารเอาเศษ พรอ้ มแสดงผลลพั ธ์ออกทางเวบ็ เบราว์เซอร์ ดว้ ยคาสั่ง echo ตวั อย่างท่ี 2.21 การนาตวั ดาเนนิ การ ++ และ -- ไปใช้งาน < ?php เพม่ิ คา่ 1 ใหก้ บั ตวั แปรกอ่ น $x = 10; แลว้ จงึ แสดงค่าทไี่ ด้ echo + + $x; / / Outputs: 11 echo $x; / / Outputs: 11 แสดงค่าในตัวแปรก่อน จากนัน้ จึงเพ่ิมคา่ ขึน้ 1 $x = 10; echo $x+ + ; / / Outputs: 10 ลดค่าลง 1 คา่ ใหก้ บั ตัวแปร echo $x; / / Outputs: 11 กอ่ นแล้วจงึ แสดงคา่ ทไ่ี ด้ $x = 10; แสดงค่าในตวั แปรกอ่ น echo --$x; / / Outputs: 9 จากน้นั จึงลดค่าลง 1 echo $x; / / Outputs: 9 $x = 10; echo $x--; / / Outputs: 10 echo $x; / / Outputs: 9 ?> จากตัวอยา่ งที่ 4.21 โปรแกรมประกาศค่าตวั แปร “x” มีค่าเปน็ 10 แล้วเพมิ่ หรือลดค่าให้ตัว แปร “x” ซึ่งมีกรณีต่างๆ ดังนี้ กรณีเพิ่มค่าขึ้น 1 ให้กับตัวแปรจะเพิ่มค่าให้ตัวแปรก่อนแล้วจึงนาค่า น้ันไปแสดงด้วยคาส่ัง ++$x ส่วนอีกกรณีจะแสดงค่าของตัวแปรก่อนเพิ่มค่าขึ้น 1 ค่าให้กับตัวแปร ด้วยคาส่ัง $x++ ส่วนการลดค่าลง 1 ค่าของตัวแปรน้ันจะทางานคล้ายกันกับการเพ่ิมค่า ดังน้ันการ

72 วางเครื่องหมาย ++ หรือ -- ไว้หน้าหรือหลังตัวแปรจะให้ผลลัพธ์ที่ต่างกัน จึงควรพิจารณาให้ดีก่อน นาไปใช้งาน 2. ตัวดาเนินการในการกาหนดค่า (Assignment operators) เป็นตัวดาเนินการสาหรับ กาหนดค่าให้กับตัวแปร มีตัวดาเนินการท่ีใช้คือ เท่ากับ (=) นอกจากนี้ยังมี +=, -=, *=, /= และ .= ซงึ่ มีรายละเอียดดงั น้ี ตารางที่ 4.2 ตัวดาเนนิ การในการกาหนดคา่ ให้กับตวั แปร ตัวดาเนินการ รายละเอียด ตัวอยา่ ง ผลลัพธ์ $x=4; 4 = กาหนดค่าให้ตวั แปร $x=4; $x+=1; 5 $x=5; $x-=2 3 += เพม่ิ ค่าใหต้ วั แปร $x=0; $x*=10; 0 $x=50; $x/=10; 5 -= ลดค่าของตัวแปร $x= “Pretty”; $x.= “Cool”; Pretty Cool *= คณู ค่าของตวั แปร /= หารคา่ ของตวั แปร .= นาค่ามาต่อทา้ ยตัวแปร ตัวอย่างที่ 4.22 การนาตวั ดาเนินการกาหนดค่าให้กับตัวแปรไปใชง้ าน < ?php กาหนดค่า 10 ให้กบั ตวั แปร x $x = 10; และแสดงคา่ ที่เกบ็ ในตวั แปร echo $x; / / Outputs: 10 $x = 20; กาหนดคา่ 20 ใหก้ ับตวั แปร x แล้วบวกตัวแปร x $x + = 30; อกี 30 จากน้ันแสดงค่าล่าสุดของตัวแปร x เปน็ 50 echo $x; / / Outputs: 50 $x = 50; กาหนดค่า 20 ใหก้ ับตวั แปร x แลว้ ลบตวั แปร x ออก $x -= 20; 20 จากน้นั แสดงค่าล่าสดุ ของตวั แปร x เป็น 30 echo $x; / / Outputs: 30 กาหนดค่า 5 ให้กับตวั แปร x แล้วคณู ตัวแปร x ดว้ ย $x = 5; 25 จากน้ันแสดงค่าล่าสุดของตวั แปร x เป็น 125 $x * = 25; echo $x; / / Outputs: 125 $x = 50; กาหนดค่า 100 ใหก้ ับตวั แปร x แล้วหารตัวแปร x $x / = 10; ดว้ ย 15 จากนน้ั แสดงค่าล่าสดุ ของตวั แปร x เป็น 5 echo $x; / / Outputs: 5 ?>

73 จากตัวอย่างข้างต้น โปรแกรมจะเร่ิมด้วยการกาหนดค่าให้กับตัวแปร “x” จากน้ันจะทาการ บวก (+=) ลบ (-=) คูณ (*=) และหาร (/=) ตัวแปรกับตัวเลขที่กาหนด แล้วใช้คาสั่ง echo เพ่ือแสดง ค่าของตัวแปร “x” เช่น กาหนดค่าให้ตัวแปร “x” เป็น 20 เม่ือประมวลผลมาถึงคาสั่ง “$x+=30” จะหมายถึงให้บวกตัวแปร “x” อีก 30 แล้วแสดงค่าที่เก็บในตัวแปรล่าสุดคือ 50 ออกทางเว็บ เบราวเ์ ซอร์ 3. ตัวดาเนินการเปรียบเทียบ (Comparison operators) เป็นตัวดาเนินการที่ใช้ในการ เปรียบเทียบตวั แปรกบั ตวั แปร ค่าคงที่กบั ตัวแปร รายละเอยี ดแสดงในตารางท่ี 4.3 ตารางที่ 4.3 ตวั ดาเนนิ การเปรยี บเทียบ ตวั ช่ือ ตวั อยา่ ง ผลลัพธ์ ดาเนนิ การ == เท่ากนั $x == $y เป็นจรงิ เมื่อ ค่าของตัวแปร x เทา่ กบั ค่าของตัว แปร y === เหมือนกัน $x === $y เป็นจรงิ เมอ่ื ค่าของตวั แปร x เทา่ กบั ค่าของตัว แปร y และต้องเป็นชนิดข้อมูลเหมือนกนั !=, <> ไมเ่ ทา่ กัน $x != $y เป็นจรงิ เม่ือ ค่าของตวั แปร x ไมเ่ ท่ากบั คา่ ของตัว แปร y !== ไม่เหมือนกนั $x !== $y เป็นจรงิ เม่อื ค่าของตวั แปร x ไมเ่ ท่ากบั ค่าของตัว แปร y หรอื ชนดิ ขอ้ มลู ต่างกัน < นอ้ ยกวา่ $x < $y เป็นจรงิ เม่อื ค่าของตวั แปร x น้อยกวา่ คา่ ของตัว แปร y > มากกวา่ $x > $y เป็นจริงเมอื่ ค่าของตัวแปร x มากกวา่ ค่าของตัว แปร y <= นอ้ ยกว่าหรือ $x <= $y เป็นจรงิ เมื่อ ค่าของตัวแปร x น้อยกวา่ หรอื เท่ากับ เท่ากบั ค่าของตวั แปร y >= มากกว่าหรือ $x >= $y เป็นจรงิ เมอ่ื ค่าของตวั แปร x มากกว่าหรือ เทา่ กบั เท่ากับค่าของตัวแปร y

74 ตัวอยา่ งท่ี 4.23 การนาตัวดาเนินการเปรยี บเทียบไปใชง้ าน < ?php เงือ่ นไขในการเปรียบเทยี บ $x = 25; ตามแต่ละตวั ดาเนนิ การ $y = 35; $z = \"25\"; var_dump($x = = $z); / / Outputs: boolean true var_dump($x != $y); / / Outputs: boolean true var_dump($x < $y); / / Outputs: boolean true var_dump($x > $y); / / Outputs: boolean false var_dump($x < = $z); / / Outputs: boolean true var_dump($x > = $y); / / Outputs: boolean false ?> จากตัวอย่างข้างต้น กาหนดค่าให้ตัวแปร “x” เป็น 25 ตัวแปร “y” เป็น 35 และตัวแปร “z” เป็น 25 จากนั้นนามาดาเนินการเปรียนเทียบในแต่ละตัวดาเนินการดังน้ี เท่ากับ ($x==$z) ไม่ เท่ากัน ($x!=$y) น้อยกว่า ($x<$y) มากกว่า ($x>$y) น้อยกว่าหรือเท่ากับ ($x<=$z) และมากกว่า หรือเท่ากับ ($x>=$y) เรียกใช้ฟังก์ชัน var_dump มาแสดงผลของการเปรียบเทียบ ซ่ึงผลลัพธ์ของ การเปล่ยี นเทียบจะเป็นขอ้ มลู ชนดิ ตรรกะ (จรงิ หรอื เท็จ) 4. ตัวดาเนินการทางตรรกะ (Logical operators) เป็นตัวดาเนินการที่ใช้เปรียบเทียบหาค่า ความจริงของตัวแปรหรือนิพจน์ ผลลัพธ์ที่ได้จะเป็นค่าความจริง (true) หรือ เท็จ (false) ซึ่งจะ นาไปใช้กับคาสั่งตรวจสอบเง่ือนไข เช่น คาส่ัง if(...), while(...) หรือ do… while(...) เป็นต้น รายละเอยี ดตวั ดาเนินการทางตรรกะดงั แสดงในตารางท่ี 4.4 ตารางที่ 4.4 ตัวดาเนนิ การทางตรรกะ ตวั ดาเนินการ ช่ือ ตัวอยา่ ง ผลลัพธ์ and หรอื && และ $x and $y, $x เป็นจริงเมอื่ ค่าของ $x และ $y เป็น && $y จรงิ ทัง้ คู่ กรณอี ื่นจะใหค้ ่าเปน็ เท็จ or หรอื || หรือ $x or $y, $x || เป็นเทจ็ เมือ่ ค่าของ $x และ $y เป็น $y เทจ็ ทง้ั คู่ กรณีอื่นจะให้คา่ เป็นจริง ! นเิ สธ !$x เปน็ จรงิ เม่อื $x เป็นเท็จ และจะให้คา่ เป็นเทจ็ เมื่อ $x เปน็ จริง xor exclusive or $x xor $y เปน็ เท็จเมือ่ คา่ ของ $x และ $y เป็น จรงิ ทง้ั คูห่ รอื เท็จท้ังคู่ กรณีที่เหลอื จะ ให้ค่าเป็นจรงิ

75 ตวั อย่างที่ 4.24 การนาตวั ดาเนินการทางตรรกะมาใชง้ าน < ?php $x= 1; &y= 18 if ($x< 5 && $y< 20) { echo “Condition is True”; } else { echo “Condition is False”; } ?> จากตัวอย่างข้างต้น กาหนดให้ตัวแปร “x” มีค่าเป็น 1 และตัวแปร “y” มีค่าเป็น 18 ใช้ คาสั่ง if(...) ในการตรวจสอบเงื่อนไขที่มีอยู่ 2 เงื่อนไข โดยเง่ือนไขแรกคือ “$x<5” นั้นคือค่าของตัว แปร x น้อยกว่า 5 หรือไม่ และเงื่อนไขท่สี องคอื “$y<20” จะตรวจสอบค่าของตวั แปร “y” น้อยกว่า 20 หรือไม่ โดยใช้ตัวดาเนินการเปรยี บเทียบ “และ” (&& เป็นจริง เมื่อทุกเงื่อนไขเป็นจริง) น้ันคือท้ัง 2 เง่ือนไขจะต้องเป็นจริง จึงจะแสดงข้อความ “Condition is True” แต่ถ้าเป็นกรณีอ่ืนให้แสดง ข้อความ “Condition is False” ออกทางเวบ็ เบราว์เซอร์ โครงสร้างควบคุม ภาษา PHP มีคาส่ังควบคุมทิศทางการทางานของโปรแกรมอยู่ 3 กลุ่ม ดังนี้ (พรวนา รัตนชู โชค, 2557: 35-56) 1. กลุ่มคาสั่งแบบทางเลือก ซ่ึงเป็นคาส่ังเปรียบเทียบเง่ือนไข เพ่ือเลือกกระทาอย่างใดอย่าง หนึ่งในสองทางเลือก หลายทางเลือก หรือทางเลือกเดียว ในท่ีน้ีเง่ือนไขจะหมายถึงนิพจน์หรอื สมการ ทางคณติ ศาสตร์ เช่น x=5, y >10 หรือ z<= 50 เป็นตน้ ซ่งึ ในภาษา PHP มคี าสง่ั แบบทางเลือกดังน้ี 1.1 คาส่ัง if เป็นคาส่งั ในการเปรยี บเทียบหรือตรวจสอบเง่ือนไขแบบทางเลือกเดียว หรือมี ทางเลือกเดียวให้ดาเนินการ กรณีเง่อื นไขเปน็ จริงเทา่ นัน้ มีรูปแบบการใช้คาสัง่ ดังน้ี รปู แบบ เงอ่ื นไขในการตรวจสอบ if ( condit ion) { ชุดคาสง่ั ทตี่ อ้ งประมวลผล / / Code to be executed กรณเี งื่อนไขเปน็ จริง }

76 สามารถแสดงในรปู แบบผงั งานดงั ภาพท่ี 4.3 เงื่อนไขในการตรวจสอบ ประมวลเมือ่ เง่อื นไข เป็นจริง ภาพท่ี 4.3 คาส่ัง if แสดงในรปู แบบผงั งาน ทมี่ า : (zentut, 2016) ตวั อยา่ งท่ี 4.25 การใช้ประโยคคาสงั่ if (zentut, 2016) < ?php $x = 11; if(($x > 10){ echo \"$x is greater than 10\"; } ?> จากตัวอยา่ งขา้ งตน้ โปรแกรมประกาศตัวแปรช่อื “x” มคี ่าเปน็ 11 จากคาส่งั if จะทาการ ตรวจสอบเง่ือนไข โดยเงื่อนไขของโปรแกรมคือ ค่าที่เก็บไว้ในตัวแปร “x” มีค่ามากกว่า 10 หรือไม่ ถ้าเงื่อนไขเป็นจริง คือมีค่ามากกว่า 10 ให้แสดงผล ค่าตัวแปรใน “x” ต่อด้วย “ is greater than 10” ออกทางเว็บเบราว์เซอร์ ถ้าเป็นเท็จจะไม่มีคาส่ังให้ดาเนินการ จบการทางานของโปรแกรม ผลลัพธ์ของโปรแกรมคือ “11 is greater than 10” ท้ังนี้เพราะค่าของตัวแปร “x” มีค่าเป็น 11 ซึ่ง มากกวา่ 10 1.2 คาสั่ง if…else คาสง่ั เปรียบเทยี บเงือ่ นไขแบบสองทางเลอื ก ซ่ึงจะตรวจสอบเงื่อนไข เหมือนคาสงั่ if แตจ่ ะเพิ่มการดาเนนิ การในสว่ นของเง่ือนไขทเ่ี ปน็ เทจ็ มรี ปู แบบและตวั อยา่ งการใช้ งานดงั นี้

77 เงอื่ นไขในการตรวจสอบ ชดุ คาส่ังท่ตี ้องประมวลผล กรณเี ป็นจริง รปู แบบ if ( condit ion) { / / Code to be executed if condition is true } else{ / / Code to be executed if condition is false } ชุดคาสัง่ ท่ตี อ้ งประมวลผล กรณเี ป็นเท็จ สามารถแสดงในรปู แบบผงั งานดังภาพที่ 4.4 เง่ือนไขในการตรวจสอบ ชุดคาสงั่ ท่ีต้อง ประมวลผลกรณีเปน็ เท็จ ชุดคาสงั่ ทตี่ อ้ ง ประมวลผลกรณีเปน็ จรงิ ภาพที่ 4.4 คาส่ัง if…else แสดงในรูปแบบผังงาน ทม่ี า : (SoraTemplates, 2016)

78 ตวั อยา่ งที่ 4.26 การใชป้ ระโยคคาสั่ง if...else (zentut, 2016) < ?php $x = 2; if($x > 10){ echo \"$x is greater than 10\"; } else{ echo \"$x is less than 10\"; } ?> จากตัวอย่างโปรแกรมข้างต้นจะประกาศตัวแปรชื่อ “x” มีค่าเป็น 2 จากนั้นใช้คาส่ัง if () ตรวจสอบเงอื่ นไข “$x>10” นน้ั คอื คา่ ที่เก็บไวใ้ นตวั แปร “x” มีคา่ มากกว่า 10 หรือไม่ ถ้าเงอื่ นไขเป็น จริง คือมีค่ามากกว่า 10 ให้แสดงค่าตัวแปร x ตามด้วย “ is greater than 10” ออกทางเว็บ เบราว์เซอร์ ถา้ เปน็ เทจ็ คือมคี ่านอ้ ยกว่า 10 ให้แสดงค่าตวั แปร x ตามดว้ ย “ is less than 10” ออก ทางเวบ็ เบราวเ์ ซอร์ จบการทางานของโปรแกรม หลังจากประมวลผลชดุ คาสั่งขา้ งตน้ แล้วจะได้ผลลัพธ์ ของโปรแกรมคือ “2 is less than 10” ท้ังนี้เพราะค่าของตัวแปร “x” มีค่าเปน็ 2 ซึ่งนอ้ ยกวา่ 10 1.3 คาส่ังเปรียบเทียบเง่ือนไขแบบหลายทางเลือก หรือมีทางเลือกจานวนมากให้เลือก ดาเนินการ ในภาษา PHP มีให้เลือกใช้งาน 2 คาสั่งคือ if…elseif และ switch…case มีรายละเอียด ดังนี้ 1.3.1 คาส่ัง if…elseif ซ่ึงเป็นคาสั่งสาหรับตรวจสอบเงื่อนไข ถ้าเป็นจริงก็จะ ดาเนินการตามท่ีกาหนดไว้ แต่ถ้าเป็นเท็จจะตรวจสอบเงื่อนไขถัดไปที่อยู่หลังคาสั่ง elseif(…) ถ้ายัง เป็นจริงจะดาเนินการคาสั่งที่อยู่ภายในวงเล็บปีกกา แต่ถ้าเป็นเท็จก็จะตรวจสอบเงื่อนไขถัดไปอีก จนกวา่ จะไม่มีเง่ือนไขใดเป็นจริงเลยจงึ จะดาเนินการหลงั คาส่ัง else มรี ูปแบบและตัวอย่างการใช้งาน ดงั นี้ เงื่อนไขแรกที่ใช้การ รูปแบบ ตรวจสอบ ชุดคาส่ังที่ตอ้ งประมวลผล เงอื่ นไขท่ี 2 ที่ใช้ if ( condit ion1) { กรณีเงื่อนไขแรกเปน็ จริง ในการตรวจสอบ / / Code to be executed if condition1 is true } elseif(condition2){ ชดุ คาสัง่ ท่ตี อ้ งประมวลผล / / Code to be executed if the condition1 is false กรณีเง่ือนไขแรกเป็นเท็จ and condition2 is true แต่เง่ือนไขที่ 2 เปน็ จริง } else{ / / Code to be executed if both condition1 and condition2 are false ชุดคาส่งั ทตี่ ้องประมวลผล กรณีเป็นเท็จ }

79 สามารถแสดงในรปู แบบผังงานดงั ภาพที่ 4.5 เงื่อนไขแรกใน ประมวลผลเมื่อเง่อื นไขแรกเปน็ จริง การตรวจสอบ ประมวลผลเมื่อเงอ่ื นไข 2 เป็นจริง เง่ือนไขที่ 2 ทีใ่ ช้ ประมวลผลเมื่อเงอื่ นไข 3 เป็นจริง ในการตรวจสอบ เง่อื นไขท่ี 3 ท่ใี ช้ ในการตรวจสอบ ภาพท่ี 4.5 คาสั่ง if… elseif แสดงในรปู แบบผังงาน ทม่ี า : (zentut, 2016) ตัวอย่างท่ี 4.27 การใชป้ ระโยคคาสั่ง if...elseif (zentut, 2016) < ?php $x = 20; if($x > 0){ echo \"$x is greater than zero\"; } elseif($x = = 0){ echo \"$x is zero\"; } else{ echo \"$x is less than zero\"; } ?> จากตัวอย่างโปรแกรมข้างต้นประกาศตัวแปรชื่อ “x” มีค่าเป็น 20 จากคาสั่ง if() ใช้ ตรวจสอบเง่อื นไข ($x>0) น่นั คือค่าทีเ่ ก็บไว้ในตัวแปร “x” มคี า่ มากกว่า 0 หรอื ไม่ ถา้ เง่อื นไขเป็นจริง คือมีค่ามากกว่า 0 ให้แสดงค่าตัวแปร x ตามด้วย “ is greater than zero” ออกทางเว็บเบราวเ์ ซอร์ ถ้าเป็นเท็จให้ตรวจสอบเงื่อนไขหลงั คาสั่ง elseif นน่ั คือ ตัวแปร “x” มคี า่ เทา่ กับ 0 หรอื ไม่ ($x==0) ถ้าเป็นจริงให้แสดงค่าตัวแปร x ตามด้วย “ is zero” ออกทางเว็บเบราว์เซอร์ กรณีเป็นเท็จให้แสดง ค่าตัวแปร x ตามด้วย “ is less than zero” แล้วจบการทางานของโปรแกรม ผลลัพธ์จากการ

80 ประมวลผลของโปรแกรมคือ “20 is greater than zero” ทั้งนี้เพราะค่าของตัวแปร “x” มีค่าเป็น 20 ซ่ึงมากกว่า 0 1.3.2 คาส่ัง switch…case เป็นคาสั่งที่ทางานคล้ายกับคาส่ัง if… elseif แต่เป็นคาสั่งท่ี ช่วยให้การเขียนโปรแกรมสั้นกระชับข้ึน และแต่ละทางเลือกการทางานจะมีคาสั่งหยุดตรวจสอบ เงื่อนไขด้วย break แต่ถ้าผลการตรวจสอบไมต่ รงกับเง่ือนไขใดเลยจะเข้าไปทางานหลังคาส่ัง default มรี ปู แบบและตวั อย่างการใชง้ านดงั น้ี รูปแบบ switch(ตวั แปรหรอื เงอ่ื นไข){ case คา่ ตัวแรกทใ่ี ชเ้ ปรยี บเทยี บกับตวั แปรหรอื เงอ่ื นไข: / / code block 1 break; case คา่ ตวั ท่ี 2 ทใ่ี ชเ้ ปรยี บเทยี บกบั ตวั แปรหรอื เงอื่ นไข: / / code block 2 break; … def ault : / / default code block break; } สามารถแสดงในรูปแบบผังงานดงั ภาพที่ 4.6 เงื่อนไขหรือค่าตัวแปรที่ ใช้ตรวจสอบ ค่าแรกทใ่ี ช้เปรยี บเทยี บ ประมวลผลมื่อเง่อื นไขแรก กบั เง่อื นไข เป็นจรงิ ค่าท่ี 2 ทีใ่ ชเ้ ปรียบเทียบ ประมวลผลม่อื เงื่อนไข 2 กับเงือ่ นไข เปน็ จรงิ ค่าที่ 3 ทีใ่ ช้ ประมวลผลมื่อเงื่อนไข 3 เปรยี บเทยี บกับเงื่อนไข เป็นจริง ประมวลผลเมอ่ื เง่อื นไขเปน็ เทจ็ ภาพท่ี 4.6 คาส่ัง switch … case แสดงในรปู แบบผงั งาน, ท่ีมา : (zentut, 2016)

81 ตัวอย่างท่ี 4.28 การใชป้ ระโยคคาสง่ั switch … case (zentut, 2016) < ?php $x = rand(0,3); sw it ch( $x) { case 0: echo '$x is equal 0'; break; case 1: echo '$x is equal 1'; break; case 2: echo '$x is equal 2'; break; case 3: echo '$x is equal 3'; break; } ?> จากตัวอย่างโปรแกรมข้างต้นประกาศตัวแปรช่อื “x” ในการกาหนดค่าให้ตวั แปร “x” จะ เรียกใช้ฟังก์ชัน rand เพื่อสุ่มตัวเลขที่อยู่ระหว่าง 0 ถึง 3 เมื่อได้ตัวเลขมาจะนาไปเก็บในตัวแปร “x” แล้วใช้คาส่ัง switch() ตรวจสอบค่าของตัวแปร “x” มีค่าเท่ากับค่าใด ถ้ามีค่าเป็น 0 ให้แสดงค่าตัว แปร “x” ตามด้วย “ is equal 0” ออกทางเว็บเบราวเ์ ซอร์ แตถ่ า้ มคี า่ เป็น 1 ใหแ้ สดงคา่ ตวั แปร “x” ตามด้วย “ is equal 1” ออกทางเว็บเบราว์เซอร์ แต่ถ้ามีค่าเท่ากับ 2 ให้แสดงค่าตัวแปร “x” ตาม ด้วย “ is equal 2” ออกทางเวบ็ เบราวเ์ ซอร์ แตถ่ า้ มคี า่ เปน็ 3 ใหแ้ สดงค่าตวั แปร “x” ตามดว้ ย “ is equal 3” ออกทางเว็บเบราว์เซอร์ จบการทางานของโปรแกรม ซ่ึงการประมวลผลโปรแกรมแต่ละ คร้ังจะได้ผลลัพธ์ท่ีแตกต่างกัน เน่ืองจากผลลัพธ์ของฟังก์ชัน rand จะเกิดจากการสุ่มตัวเลขท่ีอยู่ ระหวา่ งชว่ งตวั เลขทีก่ าหนด 2. กลมุ่ คาสัง่ แบบวนรอบ ภาษา PHP มคี าสง่ั ให้ดาเนนิ การแบบวนรอบหรือการประมวลผลชดุ คาส่ังซ้าๆ แตท่ าอย่าง มเี งอ่ื นไข นัน่ คือคาสั่ง while, do … while, for และ foreach ซง่ึ มีรายละเอียดดงั นี้ 2.1 คาส่ัง while เป็นคาส่ังให้ดาเนนิ การแบบวนรอบไปจนกว่าเงื่อนไขเป็นเท็จ จึงจะหยุด การทางานตามท่ีกาหนด ในการทางานรอบแรกจะตรวจสอบเง่ือนไขก่อน หากเง่ือนไขเป็นจริงจะเข้า ไปทางานคาสง่ั ทอ่ี ยภู่ ายในวงเล็บปีกกา เมอ่ื ทางานเรยี บร้อยจะวนกลบั ไปตรวจสอบเง่อื นไขอีกครงั้ ถา้ หากเง่ือนไขยังเป็นจริงจะกลับเข้าไปทางานคาสั่งภายในวงเล็บปีกกาอีก ดาเนินการซ้าไปจนกระทั่ง การตรวจสอบเงื่อนไขเป็นเท็จจึงหยุดการทางานแล้วออกไปทาคาส่ังท่ีอยู่นอกวงเล็บปีกกา มีรูปแบบ และตวั อยา่ งการใชง้ านดังนี้ เงอื่ นไขในการตรวจสอบ รปู แบบ คาส่งั ที่ตอ้ งดาเนนิ การซ้า w hile( condit ion) { / / code block to be executed }

82 สามารถแสดงในรปู แบบผังงานดังภาพที่ 4.7 เงอ่ื นไขในการตรวจสอบ คาส่งั ทีต่ อ้ งดาเนินการ ซา้ ภาพท่ี 4.7 คาส่ัง while แสดงในรปู แบบผงั งาน ท่มี า : (zentut, 2016) ตัวอยา่ งที่ 4.29 การใชป้ ระโยคคาส่งั while (zentut, 2016) < ?php def ine( ' MAX' , 10) ; $counter = 1; while($counter < = MAX){ echo \"The current value of the counter is { $counter} < br> \"; $counter+ + ; } ?> จากตัวอย่างข้างต้นโปรแกรมมีการประกาศค่าคงที่ชื่อ “MAX” มีค่าเท่ากับ 10 แล้ว ประกาศตัวแปรชอ่ื “counter” มีคา่ เป็น 1 จากนน้ั เร่มิ ตรวจสอบเง่อื นไขดว้ ยคาสงั่ while วา่ คา่ ที่เกบ็ ในตวั แปร “counter” มคี า่ น้อยกวา่ หรือเท่ากับค่าคงท่ี “MAX” หรอื ไม่ ($counter<=MAX) ถา้ เป็น จรงิ ใหแ้ สดงข้อความ “The current value of the counter is { คา่ ในตัวแปร counter }” และข้ึน บรรทัดใหม่ (<br>) ด้วยคาส่ัง echo ออกทางเว็บเบราว์เซอร์ แล้วเพ่ิมค่าให้กับตัวแปร “counter” ข้ึน 1 ค่า ทาการวนรอบตรวจสอบเงื่อนไขอีก หากเงื่อนไขเป็นจริงจะวนกลับไปทางานซ้าไปเรื่อยๆ จนกว่าเงื่อนไขจะเป็นเท็จ นั่นคือ ค่าของตัวแปร “counter” มากกว่าค่าคงท่ี “MAX” จึงหยุดการ ทางาน สนิ้ สดุ การทางานของโปรแกรม

83 2.2 คาสง่ั do…while เปน็ คาสั่งให้ดาเนินการแบบวนรอบไปจนกว่าเง่ือนไขจะเปน็ เท็จ จงึ จะหยุดการทางานตามที่กาหนด คล้ายกับคาส่ัง while แต่ต่างกันตรงรอบแรกของการทางาน คาสั่ง do…while จะให้เข้าไปทางานได้โดยไม่ต้องตรวจสอบเงื่อนไขหลังทางานเสร็จในรอบแรกแล้วจึงจะ ตรวจสอบเงื่อนไข หากเงื่อนไขเป็นจริงจะวนกลับไปทางานซา้ ไปเรื่อยๆ จนกว่าเงื่อนไขจะเป็นเท็จ จึง หยุดการทางานแล้วออกจากการวนรอบ ข้อสังเกต คาส่ัง do…while จะทางานชุดคาสั่งที่อยู่ภายใน วงเล็บปกี กาอย่างน้อยหนึง่ ครัง้ เสมอ แมว้ ่าเงื่อนไขในการตรวจสอบจะเปน็ เทจ็ ตั้งแต่รอบแรก. รปู แบบ คาสง่ั ทีต่ ้องดาเนนิ การซา้ do { / / code block to be executed } while (expression); เงือ่ นไขการตรวจสอบใหส้ นิ้ สดุ การทางานซา้ สามารถแสดงในรปู แบบผงั งานดังภาพท่ี 4.8 คาสง่ั ทตี่ ้องดาเนนิ การ ซ้า เงือ่ นไขการตรวจสอบให้ สน้ิ สุดการทางานซา้ ภาพท่ี 4.8 คาสง่ั do … while แสดงในรูปแบบผังงาน ท่ีมา : (zentut, 2016)

84 ตวั อยา่ งท่ี 4.30 การใช้ประโยคคาส่ัง do … while (zentut, 2016) < ?php $i = 10; do { echo $i . '< br> '; $i--; } while ($i > 0); ?> จากตัวอย่างข้างต้นโปรแกรมประกาศตัวแปรชื่อ “i” มีค่าเป็น 10 เริ่มทางานชุดคาสั่ง ภายในวงเล็บปีกกาหลังคาส่ัง do โดยรอบแรกจะแสดงค่าของตัวแปร “i” ออกทางเว็บเบราว์เซอร์ แล้วขึ้นบรรทัดใหม่ (<br>) จากน้ันลดค่าตัวแปร “i” ลง 1 ค่า ($i--) แล้วตรวจสอบเงื่อนไขว่า ค่าตัว แปร “i” มากกว่า 0 หรือไม่ หากเง่ือนไขเป็นจริงให้กลับไปดาเนินการซ้าไปเร่ือยๆ จนกระท้ังเง่ือนไข เปน็ เท็จ จึงหยดุ การทางาน สน้ิ สุดการทางานของโปรแกรม 2.3 คาส่ัง for เป็นคาสั่งให้ดาเนินการแบบวนรอบท่ีระบุจานวนรอบที่ต้องประมวลผล แน่นอน จะดาเนินการไปจนกระท่ังค่าตัวแปรมีค่าครบตามเงื่อนไขท่ีกาหนด โดยคาสั่ง for จะ กาหนดค่าตัวแปรเริ่มต้น เง่ือนไขการตรวจสอบให้ส้ินสุดการทางานซ้า และการเพิ่มหรือลดค่าตวั แปร มรี ปู แบบและตวั อย่างดังน้ี กาหนดคา่ ตัวแปรเริม่ ตน้ เงือ่ นไขการตรวจสอบใหส้ ิ้นสดุ การทางานซา้ รูปแบบ for(init_expr; condition_expr; increment_expr){ / / code block to be executed. } การเพ่ิมหรอื ลดค่าตัวแปร


Like this book? You can publish your book online for free in a few minutes!
Create your own flipbook