Menu
CoddyTech

Giá trị trả về

Thuộc phần Kiến thức cơ bản trong hành trình PHP của Coddy. Bài học 63 trên 71.

Các hàm (function) mình đã tạo cho đến nay dùng echo để hiển thị đầu ra trực tiếp. Nhưng thường thì bạn muốn một hàm tính toán gì đó rồi trả kết quả về cho bạn, để bạn có thể dùng kết quả đó ở nơi khác trong code. Đây là lúc câu lệnh return phát huy tác dụng.

Câu lệnh return gửi một giá trị trở lại nơi đã gọi hàm:

<?php
function add($a, $b) {
    return $a + $b;
}

$result = add(5, 3);
echo $result;
?>

Lệnh này in ra 8. Thay vì in tổng bên trong hàm, ta trả về tổng đó. Đoạn code gọi hàm nhận giá trị này và lưu vào $result.

Giá trị trả về giúp các hàm (function) linh hoạt hơn nhiều. Bạn có thể dùng giá trị trả về trong các phép tính, truyền nó cho các hàm khác hoặc lưu lại để dùng sau:

<?php
function double($num) {
    return $num * 2;
}

echo double(5) + double(3);
?>

Lệnh này in ra 16 (10 + 6). Mỗi lần gọi double(), hàm trả về một giá trị được dùng trong phép cộng.

Một điều quan trọng cần biết: khi PHP gặp câu lệnh return, hàm sẽ dừng ngay lập tức. Mọi code sau return sẽ không chạy.

challenge icon

Thử thách

Dễ

Đọc hai dòng đầu vào:

  1. Một số biểu thị đáy của hình chữ nhật (ví dụ: 5)
  2. Một số biểu thị chiều cao của hình chữ nhật (ví dụ: 3)

Tạo một hàm (function) có tên calculateArea nhận hai tham số: $base và $height. Hàm này cần trả về diện tích hình chữ nhật (đáy × chiều cao).

Gọi hàm với các giá trị đầu vào, lưu giá trị trả về vào một biến rồi in ra kết quả.

Ví dụ 1:

Nếu đầu vào là 5 và 3, đầu ra sẽ là:

15

Ví dụ 2:

Nếu đầu vào là 10 và 7, đầu ra sẽ là:

70

Ví dụ 3:

Nếu đầu vào là 12 và 4, đầu ra sẽ là:

48

Tự làm thử

<?php
// Đọc đầu vào
$base = intval(fgets(STDIN));
$height = intval(fgets(STDIN));

// TODO: Tạo hàm (function) tên calculateArea nhận các tham số $base và $height
// Hàm cần trả về diện tích (base × height)


// TODO: Gọi hàm với các giá trị đầu vào và lưu kết quả vào một biến


// In kết quả ra
echo $result;
?>
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Kiến thức cơ bản

Tự luyện tập: Trình biên dịch PHP online