Hàm Là Gì
Hàm (hay function) bao gồm một hoặc nhiều câu lệnh được nhóm lại với nhau và có thể được sử dụng lặp đi lặp lại nhiều lần trong chương trình.
<?php
function say_hello() {
echo "Xin chào!";
}
?>
Khai Báo Hàm
Trong PHP, hàm được khai báo sử dụng từ khoá function
và tên của hàm. Cú pháp khai báo hàm trong PHP như sau:
function functionName() {
// logic bên trong hàm
}
Ví dụ dưới đây khai báo hàm với tên sayHello
:
<?php
function say_hello() {
echo "Xin chào!";
}
?>
Tên Hàm
Tên hàm hợp lệ bắt đầu bằng một chữ cái hoặc dấu gạch dưới, theo sau là bất kỳ số lượng chữ cái, số hoặc dấu gạch dưới.
Ví dụ:
- Tên hàm hợp lệ:
say_hello
,say_hello1
,_say_Hello
,say_hello_
,sayHello
... - Tên hàm không hợp lệ:
1say_hello
,1_sayHello
,1_say*hello
,1_say$hello
không hợp lệ do tên hàm bắt đầu bởi một chữ số hoặc chứa ký tự không hợp lệ.
Gọi Hàm
Sau khi khai báo hàm thì để thực thi logic code đặt bên trong hàm thì chúng ta cần thực hiện việc gọi hàm.
Ở ví dụ dưới đây gọi hàm say_hello()
;
say_hello()
Tham Số Của Hàm
Trong PHP chúng ta có thể khai báo hàm có tham số hoặc không có tham số. Các tham số đóng vai trò là các biến sử dụng bên trong hàm và chúng ta có thể truyền dữ liệu đầu cho các biến này khi gọi hàm.
Ví dụ dưới đây khai báo hàm sayHello()
không có tham số:
<?php
function say_hello() {
echo "Xin chào!";
}
?>
Khai Báo Hàm Không Có Tham Số trong PHP
Ví dụ dưới đây khai báo hàm say_hello()
với 1 tham số đầu vào là $name
:
<?php
function say_hello($name) {
echo "Xin chào $name!";
}
?>
Khai Báo Hàm Có Tham Số trong PHP
Khi gọi hàm được khai báo với tham số chúng ta cần truyền giá trị vào cho các tham số này:
say_hello("PHP");
say_hello("JavaScript");
Ở trên các giá trị ban đầu truyền vào cho tham số $name
khi gọi hàm say_hello()
như "PHP"
hay "JavaScript"
được gọi là các đối số.
PHP không giới hạn số lần một hàm được gọi. Bạn có thể gọi hàm lặp đi lặp lại với số lần tuỳ ý.
Chúng ta cũng có thể định nghĩa hàm với nhiều đối số khác nhau:
<?php
function print_sum($number_1, $number_2) {
print $number_1 + $number_2;
}
print_sum(2, 3);
?>
Khai Báo Hàm Với Nhiều Đối Số trong PHP
Đối Số Mặc Định
Khi khai báo hàm với tham số, chúng ta có thể quy định một giá trị mặc định truyền vào cho các tham số của hàm đó. Các giá trị này còn được gọi là đối số mặc định:
<?php
function say_hello($name = "HTML") {
echo "Xin chào $name!";
}
say_hello(); // Xin chào HTML!
say_hello("PHP"); // Xin chào PHP!
?>
Giá Trị Trả Về Của Hàm
Hàm có thể trả về một giá trị khi được gọi. Để khai báo một hàm với giá trị trả về chúng ta sử dụng từ khoá return
:
<?php
function sum($num1, $num2) {
return $num1 + $num2;
}
$a = 2;
$b = 3;
$total = sum($a, $b);
echo "Tổng của $a và $b là: $total";
?>