ham-trong-php

Hàm trong PHP

Các hàm trong PHP tương tự như các ngôn ngữ lập trình khác. Hàm là một đoạn mã nhận thêm một đầu vào ở dạng tham số và thực hiện một số xử lý và trả về một giá trị.

Khởi tạo hàm trong PHP

Rất dễ dàng để tạo hàm PHP của riêng bạn. Giả sử bạn muốn tạo một hàm PHP sẽ xuất một thông báo đơn giản trên trình duyệt của bạn khi bạn gọi nó. Lưu ý rằng trong khi tạo một hàm, tên của nó phải bắt đầu bằng từ khóa function và tất cả mã PHP phải được đặt bên trong cặp dấu ngoặc nhọn {…} như thể hiện trong cú pháp sau:

function tenHam() {
khối mã cần được thực thi;
}

Ví dụ sau tạo một hàm có tên printMessage() và sau đó gọi nó ngay sau khi khởi tạo.

<?php
/* Khai bao ham PHP */
function printMessage() {
    echo 'Nội dung câu chào trong hàm của bạn!';
}

/* Goi ham PHP da khai bao o tren */
printMessage();
?>


Tạo hàm với các tham số

PHP cung cấp cho bạn tùy chọn để chuyển các tham số của bạn vào bên trong một hàm. Bạn có thể chuyển bao nhiêu tham số tùy thích. Các tham số này hoạt động giống như các biến bên trong hàm của bạn. Ví dụ sau lấy hai tham số số nguyên và cộng chúng lại với nhau rồi xuất ra.

<?php
function sumFunction($number_1, $number_2) {
    $sum = $number_1 + $number_2;
    echo "Tổng giá trị hai số là: $sum";
}

sumFunction(15, 25);
?>


Tham số dạng tham chiếu

Có thể truyền tham số cho các hàm bằng cách tham chiếu. Điều này có nghĩa là một tham số dạng tham chiếu được thao tác sửa đổi giá trị trong hàm sẽ làm thay đổi luôn giá trị của biến ban đầu. Bạn có thể truyền tham số dạng tham chiếu bằng cách thêm dấu & trước tên tham số như sau:

<?php
$number = 10;

function upFunction($num) {
    $num++;
    echo $num . '<br>';
}

function downFunction(&$num) {
    $num--;
    echo $num . '<br>';
}

upFunction($number);
echo "Giá trị biến number sau khi gọi hàm: $number <br>";

downFunction($number);
echo "Giá trị biến number sau khi gọi hàm: $number <br>";
?>


Hàm có giá trị trả về

Một hàm có thể trả về một giá trị bằng cách sử dụng câu lệnh return kết hợp với một giá trị hoặc đối tượng, return dừng việc thực thi chức năng và gửi giá trị trở lại mã 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 mảng array(1, 2 ,3 , 4).

<?php
function sumFunction($number_1, $number_2) {
    $sum = $number_1 + $number_2;
    return $sum;
}
$returnValue = sumFunction(20, 10);
         
echo "Trả về giá trị từ hàm : $returnValue";
?>


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

Bạn có thể thiết lập giá trị mặc định cho tham số khi gọi hàm nhưng không truyền tham số đó, bằng cách sử dụng dấu = như ví dụ sau:

<?php
function displayName($name = 'PHP') {
    echo "Xin chào $name!";
}

displayName();
// kết quả xuất ra sẽ là: Xin chào PHP!
?>


Gọi hàm động

Có thể gán tên hàm dưới dạng chuỗi cho biến và sau đó xử lý các biến này như cách bạn làm với chính tên hàm. Hãy xem ví dụ sau:

<?php
function displayName($name = 'PHP') {
    echo "Xin chào $name!";
}

$variable = 'displayName';
$variable();
// kết quả xuất ra sẽ là: Xin chào PHP!
?>


Mời các bạn tìm hiểu tiếp về GET & POST trong PHP ở bài viết tiếp theo nhé!