# PHP - Tham số hàm

Chào mừng bạn đến với hành trình vào thế giới lập trình PHP! Hôm nay, chúng ta sẽ đi sâu vào một trong những khái niệm cơ bản nhất trong PHP: tham số hàm. Đây là những viên gạch xây dựng cho phép chúng ta tạo ra các đoạn mã có thể tái sử dụng, có thể gọi với các giá trị khác nhau mỗi khi chúng được thực thi. Hãy bắt đầu nào!

## Ví dụ

Trước khi chúng ta đi sâu vào các tham số chính thức và thực tế, hãy bắt đầu với một ví dụ đơn giản để hiểu tham số hàm là gì. Hãy xem xét hàm sau:

```php
function greet($name) {
    echo "Hello, $name!";
}

Trong ví dụ này, $name là tham số của hàm greet. Khi chúng ta gọi hàm này sau này trong mã của chúng ta, chúng ta sẽ cung cấp một giá trị thực tế cho tham số này. Ví dụ:

PHP - Function Parameters

greet("Alice");

Khi chúng ta chạy đoạn mã này, nó sẽ xuất ra:

Hello, Alice!

Giá trị "Alice" được truyền vào hàm greet dưới dạng đối số, và nó thay thế tham số $name bên trong hàm. Đây là cách hàm có thể làm việc với dữ liệu khác nhau mỗi khi chúng được gọi.

Tham số chính thức và thực tế

Bây giờ chúng ta đã xem qua một ví dụ cơ bản, hãy làm rõ các thuật ngữ "tham số chính thức" và "tham số thực tế."

  • Tham số chính thức: Đây là biến được liệt kê trong dấu ngoặc trong định nghĩa hàm. Nó hoạt động như một placeholder cho giá trị thực tế sẽ được truyền vào hàm khi nó được gọi. Trong ví dụ trước, $name là tham số chính thức.

  • Tham số thực tế: Đây là giá trị mà bạn truyền vào hàm khi bạn gọi nó. Nó thay thế tham số chính thức trong thân hàm. Trong ví dụ của chúng ta, "Alice" là tham số thực tế.

Điều quan trọng cần lưu ý là số lượng tham số chính thức phải khớp với số lượng tham số thực tế khi gọi hàm. Nếu bạn cố gắng gọi hàm với nhiều hoặc ít hơn số lượng tham số mà nó mong đợi, PHP sẽ tạo ra một lỗi.

Mismatch Type Arguments

Một điều cần nhớ là PHP là một ngôn ngữ loosely typed, có nghĩa là nó không yêu cầu bạn phải khai báo kiểu của biến trước. Tuy nhiên, nếu bạn muốn đảm bảo rằng hàm của bạn nhận được đúng kiểu đối số, bạn có thể sử dụng type hinting. Dưới đây là một ví dụ:

function greet(string $name) {
    echo "Hello, $name!";
}

Trong phiên bản này của hàm greet, chúng ta đã thêm string trước tham số $name. Điều này cho PHP biết rằng tham số $name nên là một chuỗi. Nếu bạn cố gắng gọi hàm với một đối số không phải là chuỗi, PHP sẽ phát ra một cảnh báo.

greet(123); // Cảnh báo: Expected parameter 1 to be a string, integer given

Mặc dù type hinting có thể giúp phát hiện sớm các vấn đề tiềm ẩn, nhưng nó không bắt buộc trong PHP. Nhiều nhà phát triển chọn dựa vào typing động của PHP và tin tưởng vào chất lượng mã của riêng họ.

Kết luận

Uf! Chúng ta đã bao quát rất nhiều nội dung trong phần giới thiệu về tham số hàm trong PHP. Hãy nhớ lại những điểm chính:

  • Tham số hàm là placeholder cho các giá trị sẽ được truyền vào hàm khi nó được gọi.
  • Có hai loại đối số: chính thức (trong định nghĩa hàm) và thực tế (khi gọi hàm).
  • Type hinting có thể giúp phát hiện lỗi liên quan đến kiểu đối số không chính xác.

Khi bạn tiếp tục hành trình với PHP, bạn sẽ thấy rằng việc hiểu tham số hàm là rất quan trọng để viết mã sạch và dễ bảo trì. Đừng quên thực hành và thử nghiệm với các loại hàm và đối số khác nhau để巩固 kiến thức của bạn. Chúc bạn lập trình vui vẻ!

Credits: Image by storyset