Group Blog
 
All blogs
 

ข้อสอบข้อที่ 1






ให้นักศึกษาอธิบายการทำงานของ PHP และบอกรูปแบบการเขียนสคริปต์ PHP พร้อมทั้งยกตัวอย่างการเขียนโปรแกรมจากการเลือกใช้คำสั่งหรือเงื่อนไขต่างๆมา 3 ตัวอย่างพร้อมคำอธิบายพอสังเขป







หลักการทำงานของ PHP


       เนื่องจาก PHP จะทำงานโดยมีตัวแปลและเอ็กซิคิวต์ที่ฝั่งเซิร์ฟเวอร์ อาจจะเรียกการทำงานว่าเป็นเซิร์ฟเวอร์ไซด์ ( Server Side ) ส่วนการทำงานของบราวเซอร์ของผู้ใช้เรียกว่าไคล์เอ็นต์ไซด์ ( Client Side ) โดยการทำงานจะเริ่มต้นที่ผู้ใช้ส่งความต้องการผ่านเว็บบราวเซอร์ทาง HTTP ( HTTP Request ) ซึ่งอาจจะเป็นการกรอกแบบฟอร์ม หรือใส่ข้อมูลที่ต้องการ ข้อมูลเหล่านั้นจะเป็นเอกสาร PHP เมื่อเอกสาร PHP เข้ามาถึงเว็บเซิร์ฟเวอร์ก็จะถูกส่งไปให้ PHP เพื่อทำหน้าที่แปลคำสั่งแล้วเอ็กซิคิวต์คำสั่งนั้น หลังจากนั้น PHP จะสร้างผลลัพธ์ในรูปแบบเอกสาร HTML ส่งกลับไปให้เว็ปเซิร์ฟเวอร์เพื่อส่งต่อไปให้บราวเซอร์แสดงผลทางฝั่งผู้ใช้ต่อไป (HTTP Response) ซึ่งลักษณะงานแบบนี้จะคล้ายกับการทำงานของ CGI ( Common Gateway Interface ) หรืออาจจะกล่าได้ว่า PHP ก็คือโปรแกรม CGI ประเภทหนึ่งก็ได้ซึ่งจะทำงานคล้ายกับ ASP นั่นเอง ลักษณะการทำงานจะเป็นดังรูปข้างล่างนี้




อาจารย์คะรูปนี้สร้างเองค่ะไม่ได้Scanนะคะ 




รูปแบบการเขียนสคริปต์ PHP

รูปแบบการเขียนโค้ด PHP สามารถเขียนได้ 5 แบบ และทั้ง 5 แบบสามารถแทรกลงในส่วนใดของแท็ก HTML ก็ได้


1. การเขียนโค้ด PHP ในลักษณะทั่วไปแบบภาษา SGML จะมีรูปแบบคือ



2. การเขียนโค้ด PHP ในลักษณะภาษา XML วิธีนี้เป็นการใช้รูปแบบที่ป้องกันข้อผิดพลาด การเขียนในลักษณะนี้จะมีรูปแบบคือ



3. การเขียนโค้ด PHP ในลักษณะ JavaScript จะมีรูปแบบคือ



4. การเขียนโค้ด PHP ในลักษณะ ASP จะมีรูปแบบคือ



5. การเขียนโค้ด PHP ในลักษณะพิเศษ จะมีรูปแบบคือ







คำสั่ง for , คำสั่ง while , คำสั่ง continue


คำสั่ง for


คำสั่ง for จะทำหน้าที่สั่งให้โปรแกรมทำงานวนรอบตามต้องการ ซึ่งกำหนดเป็นเงื่อนไข โดยจะทำเมื่อเงื่อนไขนั้นเป็นจริง และจะมีตัวกำหนดว่าจะวนรอบเมื่อใด


ตัวอย่าง




ผลที่ได้ดังรูป




$i = 0 คือค่าเริ่มต้น
$i < 10 คือ เงื่อนไข
$i = $i+1 คือค่าที่จะบอกว่าเพิ่มค่าครั้งล่ะหนึ่ง

ในช่วงแรกตัวแปร $i มีค่าเท่ากับ 0 ซึ่งน้อยกว่า 10 ตามที่ตั้งเงื่อนไขไว้ในประโยค for จึงมีการดำเนินการในแต่ละวงรอบ หรือลูป (loop) ด้วยการพิมพ์ค่าของตัวแปร $i บนหน้าจอ หลังจากนั้นจึงเพิ่มค่าให้กับตัวแปร $i ขึ้นอีกครั้งละ 1 แล้วจึงย้อนกลับมาตรวจสอบเงื่อนไขที่ประโยค for อีกครั้ง เพื่อตรวจสอบดูว่าค่าของตัวแปร $i ยังคงน้อยกว่า 10 อยู่หรือไม่ ถ้าเงื่อนไขยังคงเป็นจริงก็จะพิมพ์ค่าของตัวแปร $i บนหน้าจอ และดำเนินการในลูปต่อไป แต่ถ้าเงื่อนไขเป็นเท็จแล้วจะออกจากลูปทันที และแสดงข้อความ ครั้งที่ 10 ครบแล้วค่ะ!!!





คำสั่ง while



ประโยค While ใช้เมื่อต้องการให้มีการดำเนินการเป็นวงรอบอย่างมีเงื่อนไข คือ ให้ดำเนินการประโยคคำสั่งภายใน While ไปเรื่อยๆจนกว่าเงื่อนไขของ While ( ภายในวงเล็บหลัง While ) จะเป็นเท็จ



ตัวอย่าง




ผลที่ได้ดังรูป




ในช่วงแรกตัวแปร $j มีค่าเท่ากับ 1 ซึ่งน้อยกว่า 100 ตามที่ตั้งเงื่อนไขไว้ในประโยค While จึงมีการดำเนินการในแต่ละวงรอบ หรือลูป (loop) ด้วยการพิมพ์ค่าของตัวแปร $j บนหน้าจอ หลังจากนั้นจึงเพิ่มค่าให้กับตัวแปร $j ขึ้นอีกเท่ากับค่าของตัวแปร $k และเพิ่มค่าให้กับตัวแปร $k ขึ้นอีก 1 แล้วจึงย้อนกลับมาตรวจสอบเงื่อนไขที่ประโยค While อีกครั้ง เพื่อตรวจสอบดูว่าค่าของตัวแปร $j ยังคงน้อยกว่าหรือเท่ากับ 100 อยู่หรือไม่ ถ้าเงื่อนไขยังคงเป็นจริงก็จะดำเนินการในลูปต่อไป แต่ถ้าเงื่อนไขเป็นเท็จแล้วจะออกจากลูปทันที






คำสั่ง continue



ในการใช้ for, while,do...while มีบางกรณีที่เราต้องการให้มีการข้ามการทำงานบางอย่างภายในลูปแล้วกลับไปตรวจสอบเงื่อนไขใน for, while , do...while อีกครั้ง ศึ่งสมารถทำได้โดยใช้คำสั่ง continue



ตัวอย่าง




ผลที่ได้ดังรูป




ในตอนเริ่มแรกต้น ค่าของตัวแปร $a ในประโยค while จะเพิ่มขึ้นเป็น 1 แล้วจึงตรวจสอบว่าน้อยกว่า100 หรือไม่ จากนั้นจะเข้าสู่ประโยค if เพื่อตรวจสอบว่าค่าของตัวแปร $a หารด้วย 10 ลงตัวหรือไม่ ถ้าไม่ลงตัวให้ข้ามการทำงานส่วนอื่นๆที่เหลือ แล้วกลับขึ้นไปที่รปะโยค while อีกครั้ง ( ซึ่งจะมีการเพิ่มค่าให้กับตัวแปร $a อีก 1 วนเวียนเช่นนี้ไปเรื่อยๆ ) แต่หากค่าของตัวแปร $a หารด้วย 10 ลงตัว ก็จะพิมพ์ค่าของตัวแปร $a นั้นพร้อมกับขึ้นบรรทัดใหม่ จนกระทั่งตัวแปร $a มีค่ามากกว่า 100 เงื่อนไขในประโยค while จะไม่เป็นจริงอีกต่อไปจึงออกจากลูปแล้วแสดงข้อความ " The end. "









 

Create Date : 17 ตุลาคม 2548    
Last Update : 23 ตุลาคม 2548 13:38:35 น.
Counter : 96 Pageviews.  


jang_jitty
Location :


[Profile ทั้งหมด]

ให้ทิปเจ้าของ Blog [?]
ฝากข้อความหลังไมค์
Rss Feed

ผู้ติดตามบล็อก : 1 คน [?]







Friends' blogs
[Add jang_jitty's blog to your web]
Links
 

 Pantip.com | PantipMarket.com | Pantown.com | © 2004 BlogGang.com allrights reserved.