Xem thêm

Tạo và Gọi Hàm Trong PHP: Cú pháp cơ bản và ví dụ

Huy Erick
Hàm trong PHP giống với các ngôn ngữ lập trình khác. Một hàm là một đoạn code mà nhận một hoặc nhiều đầu vào trong mẫu các tham số, và thực hiện một vài tiến...

Hàm trong PHP giống với các ngôn ngữ lập trình khác. Một hàm là một đoạn code mà nhận một hoặc nhiều đầu vào trong mẫu các tham số, và thực hiện một vài tiến trình xử lý và trả về 1 giá trị.

Tạo hàm trong PHP

Trong PHP, rất đơn giản để tạo một hàm riêng cho mình. Giả sử bạn muốn tạo một hàm, hàm này sẽ đơn giản là ghi một thông điệp trên trình duyệt khi bạn gọi nó. Ví dụ sau sẽ tạo một hàm writeMessage() và gọi nó sau khi tạo.

Chú ý rằng trong khi tạo một hàm, thì tên hàm nên bắt đầu với từ khóa function và tất cả PHP code nên được đặt trong cặp dấu {} như sau:

<!DOCTYPE html> <html> <head> <title>Hàm trong PHP</title> </head> <body> <?php  /* Định nghĩa hàm */ function writeMessage() {     echo "Chào mừng bạn đến với trang web của chúng tôi!"; }  /* Gọi hàm */ writeMessage(); ?> </body> </html>

Lưu chương trình trên trong một file có tên là test.php trong htdocs, sau đó mở trình duyệt và gõ địa chỉ http://localhost:8080/test.php để xem kết quả:

Hàm trong PHP

Hàm với các Tham số trong PHP

PHP cung cấp cho bạn tùy chọn để truyền tham số vào trong một hàm. Bạn có thể sử dụng nhiều tham số bao nhiêu nếu bạn thích. Các tham số này làm việc như các biến trong hàm. Ví dụ sau sử dụng 2 tham số integer và tính tổng của chúng rồi in ra.

<!DOCTYPE html> <html> <head> <title>Ví dụ hàm với tham số trong PHP</title> </head> <body> <?php function sum($num1, $num2) {     $total = $num1 + $num2;     echo "Tổng hai số là: $total"; }  sum(11, 22); ?> </body> </html>

Lưu chương trình trên trong một file có tên là test.php trong htdocs, sau đó mở trình duyệt và gõ địa chỉ http://localhost:8080/test.php để xem kết quả:

Hàm trong PHP

Truyền tham số bằng tham chiếu trong PHP

Bạn có thể truyền các tham số cho hàm bằng tham chiếu. Nghĩa là, một tham chiếu tới biến được thao tác bởi hàm thay vì sao chép một giá trị của biến đó.

Bất kỳ thay đổi nào được tạo ra cho một tham số trong các trường hợp này sẽ thay đổi giá trị của biến ban đầu. Bạn có thể truyền một tham số bằng tham chiếu bằng cách thêm một ký hiệu & vào trước tên biến trong lời gọi hàm hoặc định nghĩa hàm.

Ví dụ sau miêu tả hai trường hợp này:

<!DOCTYPE html> <html> <head> <title>Truyền tham số bằng tham chiếu trong PHP</title> </head> <body> <?php function addFive($num) {     $num += 5; }  function addSix(&$num) {     $num += 6; }  $originalNum = 10; addFive($originalNum); echo "Giá trị của biến originalNum là: $originalNum<br />"; addSix($originalNum); echo "Giá trị của biến originalNum là: $originalNum<br />"; ?> </body> </html>

Lưu chương trình trên trong một file có tên là test.php trong htdocs, sau đó mở trình duyệt và gõ địa chỉ http://localhost:8080/test.php để xem kết quả:

Hàm trong PHP

Hàm trả về giá trị trong PHP

Một hàm có thể trả về một giá trị bằng cách sử dụng lệnh return kết hợp với một giá trị hoặc một đối tượng. Hàm return trong PHP dừng sự thực thi của hàm và gửi giá trị trở lại code đang gọi.

Bạn có thể trả về nhiều hơn một giá trị từ một hàm bằng cách sử dụng return array(1,2,3,4).

Ví dụ sau nhận hai tham số nguyên và tính tổng giá trị của chúng, sau đó trả về kết quả cho chương trình đang gọi. Ghi chú rằng từ khóa return được sử dụng để trả về một giá trị từ một hàm.

<!DOCTYPE html> <html> <head> <title>Hàm trả về giá trị trong PHP</title> </head> <body> <?php function sum($num1, $num2) {     $total = $num1 + $num2;     return $total; }  $returnValue = sum(10, 20); echo "Giá trị trả về từ hàm là: $returnValue"; ?> </body> </html>

Lưu chương trình trên trong một file có tên là test.php trong htdocs, sau đó mở trình duyệt và gõ địa chỉ http://localhost:8080/test.php để xem kết quả:

Hàm trong PHP

Thiết lập giá trị mặc định cho tham số hàm trong PHP

Bạn có thể thiết lập một giá trị mặc định cho tham số của một hàm nếu người gọi hàm không truyền giá trị cho nó.

Hàm sau in ra chuỗi Giá trị mặc định trong trường hợp không truyền bất kỳ giá trị nào cho hàm này.

<!DOCTYPE html> <html> <head> <title>Thiết lập giá trị mặc định cho tham số hàm trong PHP</title> </head> <body> <?php function printMessage($param = "Giá trị mặc định") {     print $param; }  printMessage("Truyền cho hàm một tham số bất kỳ!!!<br />"); printMessage(); ?> </body> </html>

Lưu chương trình trên trong một file có tên là test.php trong htdocs, sau đó mở trình duyệt và gõ địa chỉ http://localhost:8080/test.php để xem kết quả:

Hàm trong PHP

Gọi hàm động trong PHP

Trong PHP, bạn có thể gán tên hàm là các chuỗi cho các biến và sau đó đối xử biến này như khi bạn gọi chính tên hàm đó. Ví dụ sau miêu tả hành vi này:

<!DOCTYPE html> <html> <head> <title>Gọi hàm động trong PHP</title> </head> <body> <?php function sayHello() {     echo "Xin chào PHP<br />"; }  $dynamicFunctionCall = "sayHello"; $dynamicFunctionCall(); ?> </body> </html>

Lưu chương trình trên trong một file có tên là test.php trong htdocs, sau đó mở trình duyệt và gõ địa chỉ http://localhost:8080/test.php để xem kết quả:

Hàm trong PHP

Các bài học PHP phổ biến khác tại VietJack:

  • PHP - Cú pháp
  • PHP - Các kiểu biến
  • PHP - Hằng (Constant)
  • PHP - Toán tử
  • PHP - Lệnh if, else, switch
1