Php thêm chức năng

PHP có hơn 1000 hàm dựng sẵn có thể được gọi trực tiếp từ bên trong tập lệnh để thực hiện một tác vụ cụ thể

Vui lòng kiểm tra tài liệu tham khảo PHP của chúng tôi để biết tổng quan đầy đủ về các hàm tích hợp PHP


Các hàm do người dùng định nghĩa PHP

Bên cạnh các hàm PHP có sẵn, bạn có thể tạo các hàm của riêng mình

  • Hàm là một khối câu lệnh có thể được sử dụng lặp đi lặp lại trong một chương trình
  • Một chức năng sẽ không tự động thực thi khi tải trang
  • Một chức năng sẽ được thực hiện bởi một lời gọi đến chức năng

Tạo một hàm do người dùng định nghĩa trong PHP

Khai báo hàm do người dùng định nghĩa bắt đầu bằng từ function

cú pháp

function functionName() {
  mã sẽ được thực thi;
}

Ghi chú. Tên hàm phải bắt đầu bằng một chữ cái hoặc dấu gạch dưới. Tên hàm KHÔNG phân biệt chữ hoa chữ thường

Mẹo. Đặt cho hàm một tên phản ánh chức năng của nó

Trong ví dụ bên dưới, chúng ta tạo một hàm tên là "writeMsg()". Dấu ngoặc nhọn mở ( { ) cho biết phần đầu của mã chức năng và dấu ngoặc nhọn đóng ( } ) cho biết phần cuối của hàm. Hàm xuất ra "Xin chào thế giới. ". Để gọi hàm, chỉ cần viết tên của nó theo sau dấu ngoặc ()

Thí dụ

function writeMsg() {
  echo "Xin chào thế giới. ";
}

writeMsg();
?>

Tự mình thử »



Đối số chức năng PHP

Thông tin có thể được chuyển đến các chức năng thông qua các đối số. Một đối số giống như một biến

Các đối số được chỉ định sau tên hàm, bên trong dấu ngoặc đơn. Bạn có thể thêm bao nhiêu đối số tùy thích, chỉ cần phân tách chúng bằng dấu phẩy

Ví dụ sau có một hàm với một đối số ($fname). Khi hàm familyName() được gọi, chúng ta cũng chuyển một tên (e. g. Jani), và tên được sử dụng bên trong hàm, hàm này xuất ra một số tên khác nhau, nhưng họ bằng nhau

Thí dụ

function familyName($fname) {
  echo "$fname Refsnes.
";
}

FamilyName("Jani");
FamilyName("Hege");
FamilyName("Stale");
familyName("Kai Jim");
familyName("Borge");
?>

Tự mình thử »

Ví dụ sau có một hàm với hai đối số ($fname và $year)

Thí dụ

function familyName($fname, $year) {
  echo "$fname Refsnes. Sinh năm $năm
";
}

FamilyName("Hege", "1975");
FamilyName("Stale", "1978");
FamilyName("Kai Jim
?>

Tự mình thử »


PHP là một ngôn ngữ được gõ lỏng lẻo

Trong ví dụ trên, hãy lưu ý rằng chúng ta không cần phải cho PHP biết biến đó thuộc kiểu dữ liệu nào.

PHP tự động liên kết kiểu dữ liệu với biến, tùy thuộc vào giá trị của nó. Vì các kiểu dữ liệu không được đặt theo nghĩa chặt chẽ, nên bạn có thể thực hiện những việc như thêm chuỗi vào số nguyên mà không gây ra lỗi

Trong PHP 7, khai báo kiểu đã được thêm vào. Điều này cung cấp cho chúng tôi một tùy chọn để chỉ định loại dữ liệu dự kiến ​​khi khai báo một hàm và bằng cách thêm khai báo strict, nó sẽ đưa ra "Lỗi nghiêm trọng" nếu loại dữ liệu không khớp

Trong ví dụ sau, chúng tôi cố gắng gửi cả số và chuỗi tới hàm mà không sử dụng strict

Thí dụ

function addNumbers(int $a, int $b) {
  return $a + $b;
}
echo addNumbers(5, "5 days");
// since strict is NOT enabled "5 days" is changed to int(5), and it will return 10
?>

Tự mình thử »

Để chỉ định strict, chúng ta cần đặt declare(strict_types=1);. Điều này phải nằm trên dòng đầu tiên của tệp PHP

Trong ví dụ sau, chúng tôi cố gắng gửi cả một số và một chuỗi vào hàm, nhưng ở đây chúng tôi đã thêm khai báo strict

Thí dụ

function addNumbers(int $a, int $b) {
  return $a + $b;
}
echo addNumbers(5, "5 days");
// since strict is enabled and "5 days" is not an integer, an error will be thrown
?>

Tự mình thử »

Khai báo strict buộc mọi thứ phải được sử dụng theo cách đã định


Giá trị đối số mặc định PHP

Ví dụ sau đây cho thấy cách sử dụng tham số mặc định. Nếu chúng ta gọi hàm setHeight() mà không có đối số thì nó sẽ lấy giá trị mặc định làm đối số

Thí dụ

function setHeight(int $minheight = 50) {
  echo "Chiều cao là. $minheight
";
}

setHeight(350);
setHeight();
setHeight(135);
setHeight(80);
?>

Tự mình thử »


Hàm PHP - Trả về giá trị

Để một hàm trả về một giá trị, hãy sử dụng câu lệnh return

Thí dụ

hàm tổng(int $x, int $y) {
  $z = $x + $y;
  return $z;  return $z;  return $z;  return $z;
}

echo "5 + 10 = ". tổng(5, 10). "
";
echo "7 + 13 = ". tổng(7, 13). "
";
echo "2 + 4 = ". tổng(2, 4);
?>

Tự mình thử »


Khai báo kiểu trả về PHP

PHP 7 cũng hỗ trợ Khai báo kiểu cho câu lệnh return. Giống như với khai báo kiểu cho các đối số hàm, bằng cách kích hoạt yêu cầu nghiêm ngặt, nó sẽ đưa ra "Lỗi nghiêm trọng" đối với kiểu không khớp

Để khai báo kiểu cho hàm trả về, hãy thêm dấu hai chấm ( function0 ) và kiểu ngay trước dấu ngoặc nhọn mở ( function1 ) khi khai báo hàm

Trong ví dụ sau, chúng tôi chỉ định kiểu trả về cho hàm

Thí dụ

hàm addNumbers(float $a, float $b). float {
  return $a + $b;
}
echo addNumbers(1. 2, 5. 2);
?>

Tự mình thử »

Bạn có thể chỉ định một kiểu trả về khác với kiểu đối số, nhưng hãy đảm bảo kiểu trả về là đúng

Thí dụ

hàm addNumbers(float $a, float $b). int {
  return (int)($a + $b);
}
echo addNumbers(1. 2, 5. 2);
?>

Tự mình thử »


Truyền đối số theo tham chiếu

Trong PHP, các đối số thường được truyền theo giá trị, có nghĩa là một bản sao của giá trị được sử dụng trong hàm và biến được truyền vào hàm không thể thay đổi

Khi một đối số hàm được truyền theo tham chiếu, các thay đổi đối với đối số cũng thay đổi biến được truyền vào. Để biến một đối số của hàm thành một tham chiếu, toán tử function2 được sử dụng