IMG-LOGO
×

Giáo Trình Môn Học

Khoá học lập trình PHP/MySQL

Kiến Thức Căn Bản

[Video] Lập trình PHP basic - Biến, hằng, toán tử và mảng trong PHP - lập trình PHP [Video] Hướng dẫn lập trình PHP căn bản với if, else if, else, switch- lập trình PHP [Video] Lập trình PHP basic - for, while, do while, foreach, function - lập trình PHP [Video] Hướng dẫn lập trình PHP căn bản - Function - lập trình PHP

Tìm Hiểu Form GET/POST

[Video] Hướng dẫn học lập PHP căn bản - Tìm hiểu GET/POST - lập trình PHP [Video] Hướng dẫn tạo dự án calculator bang PHP + JS - Lập trình PHP [Video] Ajax: Hướng dẫn tạo máy tính bằng PHP - Sử dụng Ajax - GET/POST form trong PHP - Lập trình PHP [Video] Form đăng ký tài khoản bằng PHP (GET/POST)- Form PHP [Video] huong dan chua bai tap dang ky & login su dung GET & POST - Lập trình PHP

Cookie

[Video] Lập trình PHP căn bản - cookie - lập trình PHP [Video] Hướng dẫn tìm hiểu cookie - Quản lý xác minh tài khoản login - cookie - Lập trình PHP/MySQL

Session

[Video] Lập trình PHP căn bản - session - lập trình PHP [Video] Thành thạo API - Ajax trọng dự án - Thành thạo về Session - Lập trình PHP/MySQL

Kết Nối CSDLPHP/ MySQL

[Video] Thực hiện truy vấn dữ liệu từ PHP tới MySql - Khoá học PHP căn bản [Video] Kết nối PHP với MySQL (Thực hiện insert) - Khoá PHP căn bản [Video] Tối ưu hoá code mysql + php, tạo thư viện chung trong lập trình PHP căn bản [Video] Tạo web tin tức - PHP/MySQL [Video] Thực hiện đăng nhập tài khoản sử dụng php mysql - khoá học PHP căn bản [Video]Cookie: Xây dựng cart (giỏ hàng) + checkout (thanh toán) sử dụng Cookie & localStorage - Lập trình PHP/MySQL [Video] Session: Xây dựng web hoàn thiện gồm cart page + checkout page + complete page - Lập trình PHP/MySQL [Video] Trang quản lý sản phẩm php - Lập trình PHP [Video] Viết website quản lý sinh viên PHP & MySQL - Lập Trình PHP [Video] Hướng dẫn phân trang bằng PHP - Lập trình PHP

OOP & Nâng Cao

[Video] OOP - Lập trình php [Video] Kế thừa OOP - Lập trình php [Video] Nắm chắc token login - Hướng dẫn login login multi devices, browsers trong lập trình PHP/MySQL [Video] Trở thành chuyên gia API Server - Hướng dẫn tất tần tật về API từ Server tới Client - Lập trình PHP

Examination & Ôn Tập

[Video] Kiểm Tra 60 phút - Test nhanh - Khóa học PHP

Thực Chiến: Web Bán Hoa Quả

[Video] Xây dựng website bán hoa quả bằng PHP/MySQL - Lập trình PHP/MySQL - Phần 1 [Video] Xây dựng website bán hoa quả bằng PHP/MySQL - Lập trình PHP/MySQL - Phần 2 [Video] Xây dựng website bán hoa quả bằng PHP/MySQL - Lập trình PHP/MySQL - Summernote editor - Phần 3 [Video] Xây dựng website bán hoa quả bằng PHP/MySQL - Lập trình PHP/MySQL - Phần 4 [Video] Xây dựng website bán hoa quả bằng PHP/MySQL - Lập trình PHP/MySQL - Phần 5

Thực Chiến: Web Bán Hàng

[Video] PHẦN 1 | Giới thiệu dự án-công nghệ sử dụng - phân tích chức năng dự án | Website bán hàng PHP/MySQL [Video] Phần 2 | Phân tích thiết kế CSDL (database) | Web bán hàng PHP/MySQL [Video] Phần 3 | Phân tích thiết kế CSDL (database) | Web bán hàng PHP/MySQL [Video] Phần 19 FINAL | Hướng dẫn cài đặt dự án từ source code mẫu | Web bán hàng PHP/MySQL

Hướng Dẫn Deploy Dự Án

[Video] Hướng dẫn upload website lên server -Hướng dẫn deploy project php trên heroku - Cài đặt Heroku




Trang Chủ Học PHP PHP Functions - Hàm

PHP Functions - Hàm

by GokiSoft.Com - 21:02 08/06/2020 2,908 Lượt Xem

Sức mạnh của PHP đến từ các hàm của nó.

PHP có hơn 1000 hàm dựng sẵn và bạn có thể tạo các hàm tùy chỉnh cho riêng mình.


Các hàm dựng sẵn của PHP

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


Hàm do người dùng định nghĩa

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

  • Hàm là một khối các câu lệnh có thể được sử dụng nhiều lần trong một chương trình.
  • Một chức năng sẽ không thực thi tự động khi tải trang.
  • Hàm sẽ thực thi khi được gọi.

Tạo một hàm do người dùng xác định trong PHP

Để khai báo hàm ta dùng function sau đó là tên_hàm():

Cú pháp

function functionName() {
  code được thực thi;
}

Note: 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.

Tip: Tên hàm phải là một động từ phản ánh chức năng của hàm!

Trong ví dụ dưới đây, chúng ta tạo một hàm có tên "writeMsg()". Hàm có chức nâng xuất ra dòng chữ "Hello world!". Để gọi hàm, chỉ cần viết tên của nó kèm ngoặc đơn ():

Ví dụ

<?php
function writeMsg() {
  echo "Hello world!";
}

writeMsg(); // gọi function
?>


Các đối số của hàm

Thông tin có thể được truyền đến các hàm thông qua các đối số. Một đối số giống như một biến.

Các đối số được đặt bên trong dấu ngoặc đơn. Bạn có thể thêm bao nhiêu đối số tùy ý, chỉ cầ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 đặt vào hàm một đối số là tên người (vd. Jani), và tên đó được sử dụng bên trong hàm, tạo ra một số tên khác nhau, nhưng họ là như nhau:

Ví dụ

<?php
function familyName($fname) {
  echo "$fname Refsnes.<br>";
}

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

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

<?php
function familyName($fname, $year) {
  echo "$fname Refsnes. Born in $year <br>";
}

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


PHP được coi là Loosely Typed Language (Hiểu nôm na là không cần khai báo kiểu biến trong PHP)

Trong ví dụ trên, chúng ta không phải nói với PHP kiểu dữ liệu cho biến.

PHP tự động liên kết mộ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 định nghĩa chặt chẽ, 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 dữ liệu đã được thêm vào. Điều này cho chúng ta một tùy chọn để chỉ định kiểu dữ liệu khi khai báo hàm.

Trong ví dụ sau, chúng ta gửi cả số và chuỗi vào hàm mà không sử dụng strict .Sử dụng strict để báo lỗi khi không đúng kiểu dữ liệu:

<?php
function addNumbers(int $a, int $b) {
  return $a + $b;
}
echo addNumbers(5, "5 days");
// strict KHÔNG được kích hoạt nên "5 days" được đổi thành 5, và kết quả là hàm trả về 10
?>


Để dùng strict ta phải viết declare(strict_types=1); trên dòng đầu tiên của tệp PHP.

Trong ví dụ sau, chúng ta gửi cả số và chuỗi vào hàm, nhưng ở đây có sử dụng strict:

<?php declare(strict_types=1); // strict requirement

function addNumbers(int $a, int $b) {
  return $a + $b;
}
echo addNumbers(5, "5 days");
// strict được kích hoạt và "5 days" không phải số, vì vậy sẽ xuất hiện cảnh báo lỗi
?>

strict buộc chúng ta phải sử dụng đúng kiểu dữ liệu đã khai báo.


Đối số với giá trị mặc định

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

Ví dụ

<?php declare(strict_types=1); // strict requirement
function setHeight(int $minheight = 50) {
  echo "The height is : $minheight <br>";
}

setHeight(350);
setHeight(); // will use the default value of 50
setHeight(135);
setHeight(80);
?>


Hàm có trả về

Để hàm trả về giá trị, sử dụng return:

Ví dụ

<?php declare(strict_types=1); // strict requirement
function sum(int $x, int $y) {
  $z = $x + $y;
  return $z;
}

echo "5 + 10 = " . sum(5, 10) . "<br>";
echo "7 + 13 = " . sum(7, 13) . "<br>";
echo "2 + 4 = " . sum(2, 4);
?>


Khai báo kiểu trả về

PHP 7 cũng hỗ trợ Khai báo kiểu cho return. Giống như khai báo kiểu cho các đối số hàm, bằng cách kích hoạt strict, nó sẽ xuất hiện lỗi "Fatal Error" nếu giá trị không khớp kiểu.

Để khai báo một kiểu cho hàm có trả về, thêm một dấu hai chấm ( : ) và kiểu dữ liệu bạn muốn trả về ngay trước dấu ngoặc nhọn ( { ) khi khai báo hàm:

Ví dụ

<?php declare(strict_types=1); // strict requirement
function addNumbers(float $a, float $b) : float {
  return $a + $b;
}
echo addNumbers(1.2, 5.2);
?>

Bạn có thể chỉ định kiểu trả về khác với kiểu của đối số, nhưng đảm bảo là trả về kiểu chính xác:

<?php declare(strict_types=1); // strict requirement
function addNumbers(float $a, float $b) : int {
  return (int)($a + $b);
}
echo addNumbers(1.2, 5.2);
?>

Bình luận



Chia sẻ từ lớp học

Phân Loại Bài Viết

Tài Liệu Tham Khảo

Đã sao chép!!!