ฟังก์ชัน PHP
PHP ฟังก์ชันวิธีการสร้าง
ข้อกำหนด คุณสมบัติต่างๆ และการเรียกใช้
งานฟังก์ชัน
การส่งค่าตัวแปรเพื่อประมวลผลในฟังก์ชัน การส่งค่ากลับเมื่อฟังก์ชันท างานเสร็จ
เป็นต้น
ซึ่งหน้าที่หลักๆ
ของฟังก์ชันนั้นจะช่วยลดขั้นตอนการเขียนโปรแกรมที่ต้องท าซ้ าๆ
หรือใช้งานบ่อยครั้ง ทำให้การเขียนโปรแกรมท าได้ง่ายและรวดเร็ว
สามารถสร้างเป็นไลบรารีฟังก์ชันส าหรับการใช้งานในครั้ง
ต่อๆ ไป
ฟังก์ชัน (Functions) คือ กลุ่มหรือชุดของค
าสั่งที่สร้างขึ้นเพื่อท าหน้าที่หนึ่งๆ เมื่อต้องการใช้งาน
ก็เพียงเรียกชื่อฟังก์ชันนั้นก็สามารถใช้งานได้ทันที
ฟังก์ชันใน PHP สามารถแบ่งได้เป็น 2 ชนิด คือ
1) ฟังก์ชันมาตรฐาน (Built-in
Functions) และ 2) ฟังก์ชันที่ผู้ใช้งานเป็นผู้สร้างเอง
(User Defined
Functions) มีรายละเอียด
ดังนี้
ฟังก์ชันมาตรฐาน (Built-in Functions)
ฟังก์ชันมาตรฐาน คือ
ฟังก์ชันที่มาพร้อมกับ PHP สามารถเรียกใช้งานได้ทันทีฟังก์ชันมาตรฐานมี
หลายกลุ่มการท างาน สามารถจ
าแนกตามหน้าที่ ดังนี้
ฟังก์ชันที่เกี่ยวกับวันที่และเวลา
ฟังก์ชันที่เกี่ยวกับการค
านวณทางคณิตศาสตร์
ฟังก์ชันที่เกี่ยวกับการติดต่อกับฐานข้อมูล
ฟังก์ชันที่เกี่ยวกับการจัดการกับกับสตริงหรือข้อความ
ฟังก์ชันที่ผู้ใช้งานเป็นผู้สร้างเอง
(User Defined Functions)
ฟังก์ชันที่ผู้ใช้งานเป็นผู้สร้างเอง
คือ กลุ่มของค าสั่งที่ผู้ใช้เป็นผู้เขียนหรือพัฒนาขึ้นมาเอง เพื่อ
ทำงานหรือทำหน้าที่อย่างใดอย่างหนึ่งตามต้องการ
จากที่ได้กล่าวถึงในข้างต้น
สรุปได้ว่า หลักๆ แล้วฟังก์ชันมีอยู่ด้วยกัน 2
ประเภท ทั้ง 2 ประเภท
ก็จะมีฟังก์ชันที่ประกอบไปด้วย
ฟังก์ชันที่ไม่มีการส่งค่าระหว่างฟังก์ชัน และฟังก์ชันที่มีการส่งค่าระหว่าง
ฟังก์ชัน
ค่าที่ใช้รับส่งระหว่างฟังก์ชัน จะเรียกว่า พารามิเตอร์ (parameter) หรือบ้างก็เรียกว่า อากิวเมนต์
(argument) ในหนังสือเล่มนี้ผู้แต่งขอใช้คำว่า
พารามิเตอร์ เพียงอย่างเดียวเมื่อกล่าวถึงค่าตัวแปรที่ใช้
สำหรับการรับส่งค่าระหว่างฟังก์ชัน
การเรียกใช้งานฟังก์ชันมาตรฐานของ PHP
ในการเรียกใช้งานฟังก์ชันจะต้องตรวจสอบก่อนว่าฟังก์ชันนั้นๆ
เป็นฟังก์ชันเพื่อทำหน้าที่อะไร มี
การรับส่งค่าตัวแปรระหว่างฟังก์ชันหรือไม่
ถ้าไม่มีการรับส่งค่าระหว่างฟังก์ชัน ก็สามารถเรียกใช้งานได้
เลย แต่ถ้ามีการรับส่งค่าระหว่างฟังก์ชัน
ก็จะต้องมีการระบุค่าพารามิเตอร์ ให้ถูกต้องตามรูปแบบที่ฟังก์ชัน
กำหนด
รูปแบบฟังก์ชันที่ไม่มีการรับส่งค่าระหว่างฟังก์ชัน
function_name ( );
รูปแบบฟังก์ชันที่มีการรับส่งค่าระหว่างฟังก์ชัน
function_name ($value1, $value2);
การเรียกใช้งานฟังก์ชันมาตรฐาน
<?php$today =
date("d/m/Y"); // เรียกใช้งานฟังก์ชัน date(); พร้อมระบุค่าอากิวเมนต์echo $today; // แสดงผลลัพธ์
เป็นวันที่ปัจจุบัน เช่น 6/7/2012 เป็นต้น?>
การสร้างฟังก์ชัน
ลักษณะของงานที่จะน ามาสร้างเป็นฟังก์ชันนั้น
ควรเป็นงานหรือการกระทำอย่างใดอย่างหนึ่ง ที่
มักจะต้องทำช้าๆ และบ่อยครั้ง
เพื่อให้ไม่ต้องเขียนคำสั่งหรือชุดคำสั่งนั้นๆ ทุกครั้งที่ต้องการทำงาน
แบบเดิม ซึ่งสามารถแยกคำสั่งบางส่วนออกมาสร้างเป็นฟังก์ชันไว้ต่างหากและนำมาทำเป็นฟังก์ชัน
และ
เรียกใช้ตามลักษณะงานที่ต้องการ
จะช่วยให้โค้ดคำสั่งของมีขนาดเล็กลง ช่วยลดการใช้ทรัพยากร และง่าย
ในการปรับปรุงแก้ไขในอนาคต
เพราะสามารถแก้ไขเพียงครั้งเดียวก็จะมีผลทุกจุดที่เรียกใช้ฟังก์ชัน
รูปแบบ
<?phpfunction ชื่อฟังก์ชัน
(พารามิเตอร์){ค าสั่ง;}?>
หมายเหตุ
การตั้งชื่อฟังก์ชัน
มีหลักเกณฑ์คล้ายกับการตั้งชื่อตัวแปร ดังนี้
- ต้องขึ้นต้นชื่อด้วย a-z
หรือ _ เท่านั้น
- ต้องประกอบด้วย a-z,
0-9 หรือ _ เท่านั้น
- ต้องไม่ซ้ำกับชื่อฟังก์ชันที่มีอยู่แล้วหรือฟังก์ชันมาตรฐานของ
PHP
พารามิเตอร์ คือ
ตัวแปรหรือข้อมูลที่ต้องการรับจากภายนอกฟังก์ชันเข้ามาประมวลผลภายใน
ฟังก์ชัน จะมีหรือไม่ก็ได้
ขึ้นอยู่กับว่าจำเป็นต้องใช้หรือไม่
การเรียกใช้ฟังก์ชันที่สร้างเอง
การเรียกใช้ฟังก์ชันที่สร้างเองสามารถทำได้เช่นเดียวกับการใช้ฟังก์ชันมาตรฐานของ
PHP คือ
ต้องระบุชื่อฟังก์ชันที่ต้องการใช้งานโดยระบุข้อมูลที่จะส่งให้กับฟังก์ชัน
(ถ้ามี) ดังตัวอย่าง
การสร้างฟังก์ชัน
<?phpfunction generateFooter
($msg){printf ("<p><font color=red> %s
<font></p>",$msg);}?>
การเรียกใช้ฟังก์ชันที่สร้างเอง
<?phpgenerateFooter
("Copyright 2012 Mr.Parinya Noidonprai");?>
ฟังก์ชันแบบมีการส่งค่าพารามิเตอร์
พารามิเตอร์ คือ ข้อกำหนดในการรับข้อมูลของฟังก์ชัน
โดยข้อมูลนั้นจะถูกนำไปใช้ประมวลผล
ภายในฟังก์ชัน พารามิเตอร์จะทำให้ฟังก์ชันมีความยืดหยุ่นต่อการใช้งาน
เพราะผลลัพธ์จะแปรเปลี่ยนไป
ตามค่าพารามิเตอร์นั้น วิธีการกำหนดค่าพารามิเตอร์
มีดังนี้
พารามิเตอร์แบบกำหนดค่าเริ่มต้น (Default Parameter)
ในบางฟังก์ชันอาจใช้ค่าพารามิเตอร์ค่าใดค่าหนึ่งเป็นส่วนใหญ่
โดยอาจมีการเปลี่ยนไปใช้ค่าอื่น
บ้างในบางครั้ง
ดังนั้นเพื่อความสะดวกจึงมีการกำค่าพารามิเตอร์แบบกำหนดค่าเริ่มต้นขึ้น โดยจะ
กำหนดค่าพารามิเตอร์ที่ต้องใช้บ่อยๆ
ไว้ล่วงหน้า หรือป้องกันปัญหาในกรณีที่ไม่ได้กำหนดค่าพารามิเตอร์
ให้กับฟังก์ชัน
เมื่อมีการเรียกใช้ฟังก์ชันหากไม่มีการส่งค่าพารามิเตอร์มาให้ฟังก์ชัน
ฟังก์ชันจะเรียกใช้ค่า
เริ่มต้นที่กำหนดไว้ให้แทน รูปแบบการกำหนดพารามิเตอร์แบบกำหนดค่าเริ่มต้น
มีรายละเอียด ดังนี้
รูปแบบ
<?phpfunction ชื่อฟังก์ชัน
(ชื่อพารามิเตอร์ = ค่าเริ่มต้น) { ค าสั่ง;}?>ตัวอย่างที่6.6 ฟังก์ชันปิรามิดตัวเลข
<?phpfunction pyramidNumber
($number=7) {for ($loop1=$number;
$loop1>=1; $loop1--)
{
for($loop2=1; $loop2<=$loop1; $loop2++) {
printf (" %d ",$loop2); } echo "</
br>";}}?>








