Functions ใน PHP: การสร้างและการเรียกใช้งาน
ในบทที่แล้ว เราได้เรียนรู้เกี่ยวกับ Arrays ซึ่งเป็นโครงสร้างข้อมูลที่สำคัญในการจัดเก็บข้อมูล ในบทนี้ เราจะมาทำความรู้จักกับ Functions หรือ ฟังก์ชัน ซึ่งเป็นเครื่องมือสำคัญในการจัดระเบียบโค้ดและนำโค้ดกลับมาใช้ใหม่ได้
Functions คืออะไร?
Functions คือกลุ่มของคำสั่งที่ถูกรวมเข้าด้วยกันเพื่อทำงานเฉพาะอย่าง เมื่อเราต้องการทำงานนั้น เราสามารถเรียกใช้งาน Function ได้โดยไม่ต้องเขียนโค้ดชุดเดิมซ้ำๆ
Functions ช่วยให้โค้ดของเรา:
- อ่านง่ายขึ้น: โค้ดที่ถูกแบ่งเป็น Functions จะดูเป็นระเบียบและเข้าใจได้ง่ายกว่า
- นำกลับมาใช้ใหม่ได้: เราสามารถเรียกใช้ Function ได้หลายครั้งในโปรแกรมเดียวกัน
- แก้ไขง่ายขึ้น: หากต้องการแก้ไขการทำงานของ Function เราสามารถแก้ไขได้ใน Function เดียว ไม่ต้องแก้หลายที่
การสร้าง Function
การสร้าง Function ใน PHP ทำได้โดยใช้ Keyword function ตามด้วยชื่อ Function, วงเล็บ () และปีกกา {} ภายในปีกกาคือชุดคำสั่งที่ Function จะทำงาน
function sayHello() {
echo "Hello, World!";
}
ในตัวอย่างนี้ เราได้สร้าง Function ชื่อ sayHello ซึ่งจะแสดงข้อความ "Hello, World!" เมื่อถูกเรียกใช้งาน
การเรียกใช้งาน Function
การเรียกใช้งาน Function ทำได้โดยพิมพ์ชื่อ Function ตามด้วยวงเล็บ ()
sayHello(); // เรียกใช้งาน Function sayHello
เมื่อรันโค้ดนี้ จะแสดงข้อความ "Hello, World!" ออกมา
ตัวอย่าง:
<?php
function sayHello() {
echo "Hello, World!<br>";
}
sayHello(); // แสดง Hello, World!
sayHello(); // แสดง Hello, World! อีกครั้ง
?>
Parameters (พารามิเตอร์)
Parameters คือค่าที่เราส่งให้กับ Function เพื่อให้ Function ทำงานกับค่าเหล่านั้น เราสามารถกำหนด Parameters ได้ภายในวงเล็บ () ของ Function
function sayHelloTo($name) {
echo "Hello, " . $name . "!<br>";
}
sayHelloTo("Alice"); // แสดง Hello, Alice!
sayHelloTo("Bob"); // แสดง Hello, Bob!
ในตัวอย่างนี้ Function sayHelloTo รับ Parameter ชื่อ $name เมื่อเราเรียกใช้งาน Function เราต้องส่งค่าให้กับ Parameter นี้ด้วย
เราสามารถกำหนด Parameters ได้หลายตัว โดยคั่นด้วยเครื่องหมาย , (comma)
function add($num1, $num2) {
$sum = $num1 + $num2;
echo $num1 . " + " . $num2 . " = " . $sum . "<br>";
}
add(5, 3); // แสดง 5 + 3 = 8
add(10, 20); // แสดง 10 + 20 = 30
Default Parameter Values (ค่าเริ่มต้นของพารามิเตอร์)
เราสามารถกำหนดค่าเริ่มต้นให้กับ Parameter ได้ หากไม่มีการส่งค่าให้กับ Parameter นั้นเมื่อเรียกใช้งาน Function
function greet($name = "Guest") {
echo "Welcome, " . $name . "!<br>";
}
greet(); // แสดง Welcome, Guest! (ใช้ค่าเริ่มต้น)
greet("Charlie"); // แสดง Welcome, Charlie!
Return Values (ค่าที่ส่งกลับ)
Function สามารถส่งค่ากลับ (Return) ให้กับผู้เรียกใช้งานได้ โดยใช้ Keyword return
function multiply($num1, $num2) {
$product = $num1 * $num2;
return $product; // ส่งค่าผลคูณกลับ
}
$result = multiply(4, 6); // $result จะมีค่าเท่ากับ 24
echo "Result: " . $result . "<br>"; // แสดง Result: 24
เมื่อ Function ทำงานถึง Keyword return Function จะหยุดทำงานและส่งค่าที่กำหนดกลับไป
ตัวอย่างการใช้ Return Values:
<?php
function calculateArea($width, $height) {
$area = $width * $height;
return $area;
}
$width = 10;
$height = 5;
$area = calculateArea($width, $height);
echo "The area of the rectangle is: " . $area . "<br>";
?>
Type Hinting (การกำหนดชนิดข้อมูล)
PHP 7 และเวอร์ชันที่สูงกว่า สนับสนุน Type Hinting ซึ่งช่วยให้เรากำหนดชนิดข้อมูลของ Parameter และ Return Value ได้ ทำให้โค้ดมีความน่าเชื่อถือและอ่านง่ายยิ่งขึ้น
function calculateSum(int $num1, int $num2): int {
return $num1 + $num2;
}
echo calculateSum(5, 3); // แสดง 8
// หากส่งค่าที่ไม่ใช่ Integer จะเกิด Error
// echo calculateSum("5", "3"); // จะเกิด TypeError
ในตัวอย่างนี้ เรากำหนดว่า Parameter $num1 และ $num2 ต้องเป็น Integer และ Return Value ก็ต้องเป็น Integer ด้วย หากมีการส่งค่าที่ไม่ตรงกับชนิดข้อมูลที่กำหนด PHP จะแสดง Error
ตัวอย่างการใช้ Type Hinting กับ Array:
function printArray(array $myArray) {
foreach ($myArray as $value) {
echo $value . "<br>";
}
}
$numbers = [1, 2, 3, 4, 5];
printArray($numbers);
สรุป
Functions เป็นเครื่องมือที่สำคัญในการเขียนโปรแกรม PHP ช่วยให้โค้ดของเราเป็นระเบียบ อ่านง่าย นำกลับมาใช้ใหม่ได้ และแก้ไขง่ายขึ้น ในบทนี้ เราได้เรียนรู้เกี่ยวกับการสร้าง Function, การเรียกใช้งาน Function, Parameters, Return Values และ Type Hinting ซึ่งเป็นพื้นฐานที่สำคัญในการพัฒนาโปรแกรม PHP ที่ซับซ้อนยิ่งขึ้น
ในบทต่อไป เราจะเรียนรู้เกี่ยวกับการรวมโค้ด PHP เข้ากับ HTML เพื่อสร้างเว็บไซต์ที่มีการโต้ตอบกับผู้ใช้