Hàm

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!";
    }
?>

Mở editor

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!";
    }
?>

Mở editor

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()

Mở editor

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!";
    }
?>

Mở editor

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!";
    }
?>

Mở editor

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);
?>

Mở editor

Đố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!
?>

Mở editor

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";
?>

Mở editor

2 Bình Luận

Nam Tu Nam Tu

$total = $sum($a, $b);
=>
$total = sum($a, $b);

Nguyễn Duy Nguyễn Duy

Cảm ơn bạn đã góp ý! Đoạn code đã được sửa lại bỏ ký tự thừa $ trước tên hàm.

夙 黄 夙 黄

Hiểu thêm: http://www.bongdalu.mobi/today/

Hướng Dẫn Liên Quan