Đặt tên hàm php

Chức năng có thể trả về giá trị khi được gọi hoặc có thể chỉ cần thực hiện một hoạt động mà không trả về bất kỳ giá trị nào

PHP có hơn 700 Hàm được xây dựng sẵn để thực hiện các nhiệm vụ khác nhau

2. In sao lại sử dụng Hàm

Hàm giúp tổ chức mã tốt hơn. Hàm giúp nhóm mã khối thực hiện chức năng liên quan đến nhiệm vụ cụ thể

Tái sử dụng Mã – Một khi đã được sử dụng, Hàm có thể sử dụng mà không cần định nghĩa lại. Việc làm này giúp tiết kiệm thời gian thiết lập chương trình, giảm mã lặp, giảm kích thước chương trình

Dễ bảo trì [Easy Maintenance] - Hàm giúp chúng ta có 1 chỗ sửa đổi và cập nhật toàn bộ chương trình

3. Chức năng tích hợp sẵn trong PHP?

Hàm tích hợp sẵn là các Hàm có sẵn khi cài đặt PHP

Các hàm dựng sẵn là các Hàm thực hiện công việc thường gặp giúp PHP làm việc hiệu quả

Các chức năng tích hợp được chia thành nhiều loại khác nhau như

Hàm chuỗi. Các hàm thao tác với chuỗi trong PHP


Như tên gọi của nó. Các hàm chuỗi là các hàm được xây dựng sẵn trong PHP để thực hiện các công việc với các chuỗi như là. Chuyển đổi chữ Hoa thành chữ thường, Cắt chuỗi, Tính số lượng từ, ký tự số lượng,

>>> Bạn có thể tham khảo các hàm thao tác với Chuỗi tại W3Schools

Hàm số. Các hàm thao tác với Number trong PHP


Hàm số là hàm thao tác với số, trả về kết quả dạng số

Nó được sử dụng để định dạng dữ liệu kiểu số, trả về giá trị của các hằng số, thực hiện các phép toán toán học.

>>> Bạn có thể tham khảo các hàm thao tác với Số tại W3Schools

4. Tại sao sử dụng Hàm tự tạo trong PHP [Hàm do người dùng xác định]

Trong khi thiết lập chương trình, chúng ta sử dụng hàm tự tạo [User Defined Functions] khi

Thực hiện các công việc cụ thể, riêng biệt
Khi cân nhắc về việc làm tối ưu hiệu năng cho từng trường hợp cụ thể
Khi thực hiện

Để nói hết về các vấn đề về hàm thì sẽ tốn rất nhiều giấy mực. Tạm dừng ở bài này thì sẽ chưa nói đến [ Chúng ta vẫn chưa biết tạo hàm như thế nào cơ mà =]]]

Được rồi, bây giờ trước khi vào tạo ra hàm cho riêng bạn thì bạn phải nắm lấy

6 Quy tắc tạo Hàm trong PHP


  • Tên hàm phải bắt đầu với một ký tự hoặc gạch dưới
  • Name hàm not started by number.  
  • Tên của hàm phải là duy nhất
  • Tên của hàm không chứa dấu cách
  • Tên của hàm phải mô tả được công việc của nó
  • Hàm chấp nhận tham số và có thể trả lại giá trị

Bây giờ chúng ta sẽ tạo ra hàm đầu tiên cho riêng mình. Nhưng chúng ta sẽ chỉ tạo ra một hàm cơ bản, đủ để thấy các thành phần chính của hàm thoại

Ví dụ về Hàm tự tạo trong PHP


Hãy xem đoạn code sau:

Giải thích về cấu trúc của hàm tự tạo trong PHP

  • hàm số. []{. }. This cấu trúc tạo một chức năng
  • thêm_số. Đây là tên hàm, chúng ta sẽ sử dụng để gọi hàm
  • []. You can transfer the number to here
  • tiếng vang 1+2;. Đây là mã thực thi. Tùy theo yêu cầu mà bạn có thể viết mã thực thi trong này

Bây giờ hãy thử thêm một chút phức tạp bằng cách tạo một hàm và truyền tham số vào

Giả sử chúng ta viết một chức năng Chào khách hàng với tên cụ thể. Tuy nhiên, tên cụ thể thì chỉ nhận được sau khi KH giới thiệu và khi Mã chúng ta chưa biết nên xin chào ai

[Dĩ nhiên là phần lấy tên của KH thì mình sẽ không viết ở bài này, nó sẽ phức tạp. Please center into the transfer parameter to a function]

Như bạn thấy chúng ta đã truyền biến $name vào khi tạo hàm

$name được gọi là tham số

Khi gọi hàm display_name["Trâm Anh"] thì chúng ta sẽ có kết quả như trên

Bây giờ hãy thử một hàm được truyền vào tham số và sau đó trả về một giá trị

Hàm usd_to_vnd sẽ trả lại giá trị số vnd bằng cách chuyển vào số usd. Đoạn mã dưới đây sẽ thực hiện công việc đó

Lưu ý. Ở đây chúng ta truyền vào tham số $usd = 0

Đây là cách thiết lập giá trị mặc định cho tham số $usd. Nếu chúng ta không truyền giá trị khi gọi. Mặc định hàm usd_to_vnd sẽ sử dụng tham số $usd = 0

Nếu bạn không đặt giá trị mặc định thì khi gọi hàm mà không truyền vào giá trị nào, chương trình sẽ ném ra một lỗi Fatal error

Còn khi đã đặt giá trị mặc định cho tham số $usd thì kể cả bạn không truyền đối số [Truyền khi tạo hàm gọi là tham số, truyền khi gọi hàm thì gọi là đối số] khi gọi hàm thì chương trình vẫn không bị

Hàm trong PHP là một nhóm mã được đặt tên với mục đích thực hiện một nhiệm vụ được xác định. Thông thường hàm hoạt động dựa trên một số thông tin đầu vào, thường gọi là tham số và trả về một kết quả

Việc sử dụng chức năng trả lại rất nhiều lợi ích. Hàm có khả năng được tái sử dụng ở những vị trí khác nhau trong tập lệnh, qua đó tránh được việc viết mã lặp. Khi các thao tác cơ bản được chuyển thành hàm, mã sẽ có cấu trúc rõ ràng, dễ đọc, dễ theo dõi hơn

Trên thực tế, ngay từ những bài học đầu tiên về PHP bạn đã tiếp xúc với hàm. Đến giờ bạn đã làm quen và sử dụng rất nhiều hàm khác nhau được xây dựng sẵn trong PHP

Tuy nhiên, bạn mới chỉ dừng lại khi sử dụng các hàm đã xây dựng sẵn

PHP, cũng như các ngôn ngữ lập trình khác, cung cấp cho người lập trình khả năng tự xây dựng hàm của riêng mình. Không chỉ vậy, bạn còn có thể tập hợp các hàm tự xây dựng lại thành các hàm thư viện xây dựng của riêng mình để sử dụng lại qua nhiều dự án, giống như khi sử dụng các hàm xây dựng thư viện sẵn có

ĐỘI DUNG CỦA BẢN DỊCH Ẩn

1. Định nghĩa hàm [hàm] trong PHP

2. Hàm trả về kết quả

3. Sử dụng hàm trong PHP

4. Một số trường hợp khai báo hàm đặc biệt trong PHP

4. 1. Khai báo hàm trong lệnh

4. 2. Khai báo hàm trong hàm

5. Một số trường hợp sử dụng hàm đặc biệt trong PHP

5. 1. Hàm tự gọi chính nó – đệ quy trong PHP

5. 2. Gọi hàm

6. Kết luận

Định nghĩa hàm [hàm] trong PHP

Việc tạo ra các hàm của riêng bạn được gọi là định nghĩa hoặc khai báo hàm. Để định nghĩa [khai báo] một hàm mới, bạn sử dụng từ khóa hàm với cú pháp như sau

function tên_hàm[$tham_số_1, $tham_số_2, ...] {
   Lệnh 1;
   Lệnh 2;
   ...
}

Trong đó, tên_hàm cần tuân thủ quy tắc đặt định danh chung của PHP

Tên hàm cần có để thực hiện hành động, do đó nên sử dụng động từ làm tên hàm. Tên hàm nên đặt theo một trong các kiểu sau

  • all of bình thường viết và ghép bởi gạch chân. Ví dụ, get_name, set_age
  • lạc đàCase – bắt đầu bằng chữ thường, viết hoa chữ cài đặt đầu mỗi từ tiếp theo. Ví dụ, getName, setAge

Nếu chọn bất kỳ kiểu nào thì sử dụng hệ thống tốt nhất trong toàn bộ mã

Cặp dấu {} là bắt buộc. Cặp dấu {} và các lệnh nằm giữa việc tạo ra khối mã thân hàm

Trong đó, [$tham_số_1, $tham_số_2, …] được gọi là danh sách tham số. Danh sách tham số không quy định kiểu của các tham số. Do vậy khi sử dụng tham số nên kiểm tra kỹ loại cẩn thận

Trong định nghĩa hàm, $tham_số_1, $tham_số_2 như vậy được gọi là tham số hình thức do ở giai đoạn định nghĩa hàm mà bạn không biết giá trị cụ thể của các tham số này. Bạn có thể sử dụng các tham số này trong hàm thân như các biến định nghĩa có sẵn [nhưng giá trị chưa được xác định]

Danh sách tham số không bắt buộc. Nếu hàm không có tham số nào, lệnh khai báo hàm chỉ đơn giản như sau [phần danh sách tham số để trống]

function tên_hàm[]{
  Lệnh 1;
  Lệnh 2;
  ...
}

Sau đây là một số ví dụ về khai báo hàm đơn giản

// đây là định nghĩa một hàm không tham số
function hello[] {
    echo "Hello world from PHP";
}
// hàm này có 1 tham số
function greeting[$name] { 
    echo "Hello world, $name!";  // sử dụng tham số $name như một biến bình thường
}
// hàm có 2 tham số
function welcome[$fname, $lname] {
  echo "Hello, $fname $lname. Welcome to heaven!";
}

Lệnh khai báo hàm trong PHP có thể nằm trong lệnh khác, hoặc thậm chí chí nằm trong hàm khác [hàm lồng nhau]

Hàm trả về kết quả

Hàm cũng có thể trả lại giá trị [thông qua lời gọi hàm]. Nếu hàm yêu cầu trả lại giá trị, bạn sử dụng từ khóa trả về trước giá trị trả về

Sau đây là định nghĩa một hàm trả về kết quả

// hàm tính tổng các số từ 0 đến $n
function sum[$n] {
    $s = 0;
    for[$i = 0; $i  [-$b - sqrt[$d]]/[2*$a]
    ];
}

Đây là một hàm giải phương trình bậc 2. Do the method could have 2 experience, they ta save the this two experience into a an array

Sử dụng hàm trong PHP

Một chức năng sau khi định nghĩa sẽ có thể được sử dụng. You only can use function after đã định nghĩa nó. Nếu sử dụng hàm trước định nghĩa sẽ báo lỗi

Use function [lời gọi hàm] thực hiện theo cú pháp chung sau

// nếu hàm có tính toán ra kết quả
$kết_quả = tên_hàm[$tham_số_1, $tham_số_2, ...];
// nếu hàm không tính ra kết quả
tên_hàm[$tham_số_1, $tham_số_2, ...];
// nếu hàm không yêu cầu tham số
[$kết_quả =]tên_hàm[];

Thực hiện việc sử dụng chức năng đã rất quen thuộc với bạn

Với các chức năng hello, welcome và hello khai báo ở trên bạn có thể gọi như sau

hello[]; // lời gọi đơn giản nhất không tham số
greeting['Donald']; // truyền giá trị cho tham số $name
$n= 'Donald';
greeting[$n]; // truyền một biến làm tham số cho greeting
welcome['Donald', 'Trump']; // truyền hai giá trị cho hai tham số tương ứng

Đối với hai hàm tổng và giai thừa, lời gọi hàm như sau

________số 8

Dĩ nhiên bạn cũng có thể viết

sum[100];
factorial[4];

Tuy nhiên, kết quả của hàm tính toán sẽ không được lưu trữ hoặc sử dụng [tức là công cụ sử dụng hàm. ]

Ở giai đoạn gọi [sử dụng] hàm, bạn cung cấp giá trị cụ thể để tương ứng với các tham số có trong khai báo [xác định hàm]. Khi gọi hàm, các giá trị truyền cho tham số được gọi là tham số thực

Thông thường, khi định nghĩa hàm với bao nhiêu tham số hình thức, khi gọi bạn truyền phần trăm giá trị, theo đúng thứ tự. Tuy nhiên những điều này đều không bắt buộc. Chúng ta sẽ nói chi tiết hơn về cách khai báo và truyền tham số cho hàm trong một bài học riêng

Khi định nghĩa và sử dụng hàm cần lưu ý, đặc biệt là đối với các bạn xuất phát từ C

[1] trong PHP tên hàm không phân biệt hoa thường. Ví dụ, tên chức năng Lời chào và lời chào giống như nhau. Đoạn mã sau sẽ báo lỗi vì bạn định nghĩa hàm lời chào [hay Lời chào] hai lần

function tên_hàm[]{
  Lệnh 1;
  Lệnh 2;
  ...
}
0

[2] trong khai báo hàm PHP không giới hạn kiểu của tham số, và trong lời gọi hàm PHP cũng không thực hiện kiểu kiểm tra giám sát, do đó cần chú ý kiểm tra kiểu của tham số trước khi sử dụng

[3] trong khai báo hàm không giới hạn kiểu kết quả, điều này dẫn đến một hàm có thể trả về kết quả thuộc nhiều kiểu khác nhau. Điều này bạn đã gặp khá nhiều lần khi một hàm có thể trả về kết quả vừa kiểu số vừa kiểu logic, vừa kiểu chuỗi vừa kiểu logic

Trong bài học sau bạn sẽ làm quen với kiểu chỉ báo [kiểu gợi ý] trong khai báo hàm – một tính năng hỗ trợ chỉ báo kiểu tham số và kiểu kết quả của hàm trong PHP 7. 4

Một số trường hợp khai báo hàm đặc biệt trong PHP

Trong PHP việc khai báo và sử dụng hàm có nhiều điểm đặc biệt mà các bạn xuất phát từ C/C#/Java/C++ có thể cảm thấy tương đối bất thường

Khai báo hàm trong lệnh

Đầu tiên, PHP cho phép khai báo hàm bên trong một lệnh khác. Ví dụ

function tên_hàm[]{
  Lệnh 1;
  Lệnh 2;
  ...
}
1

Trong ví dụ này, lệnh khai báo giai thừa hàm nằm bên trong lệnh if. Nó có nghĩa là chúng ta chỉ thực hiện khai báo [và sử dụng] giai thừa hàm khi biến $n chắc chắn nguyên dương. Trong các trường hợp khác, giai thừa hàm không được khai báo

Khai báo hàm trong hàm

Rắc rối thứ hai là khả năng khai báo hàm bên trong một hàm khác. Hàm khai báo bên trong một hàm khác được gọi là hàm lồng nhau [nested function]

Please view ví dụ sau

function tên_hàm[]{
  Lệnh 1;
  Lệnh 2;
  ...
}
2

Trong ví dụ này chúng ta khai báo và sử dụng hai hàm check và prod bên trong hàm giai thừa

Hàm lồng nhau trong PHP có một điểm đặc biệt

  • Mặc dù gọi là hàm lồng nhưng bạn vẫn có thể gọi nó từ bên ngoài hàm cha, giống như hàm cha
  • Hàm lồng chỉ tồn tại [bên ngoài hàm cha] sau khi gọi hàm cha. Nếu bạn sử dụng hai hàm này bên ngoài hàm giai thừa trước khi gọi hàm thừa [] thì sẽ gặp lỗi 'Gọi hàm không xác định'
  • Hàm lồng sau khi gọi hàm cha sẽ có phạm vi giống như toàn cầu giống như hàm cha

Những điểm đặc biệt này làm cho hàm lồng tiếng trong PHP khá rắc rối. Nhìn chung nếu đã có nhu cầu sử dụng làm lồng, bạn nên chuyển sang lớp xây dựng

Một số trường hợp sử dụng hàm đặc biệt trong PHP

Hàm tự gọi chính nó – đệ quy trong PHP

Đệ quy là hiện một hàm tự gọi chính nó

Vui lòng xem ví dụ về định nghĩa giai cấp thừa của một số nguyên n

Theo định nghĩa này, giá trị của n. bằng 1 nếu n = 0, và bằng n * [n-1]. nếu n > 0. Đây là cách định nghĩa giai cấp thừa theo kiểu đệ quy – định nghĩa một khái niệm qua chính nó

Với định nghĩa giai thừa như trên chúng ta có thể viết lại hàm tính giai thừa trong PHP như sau

function tên_hàm[]{
  Lệnh 1;
  Lệnh 2;
  ...
}
3

Để ý rằng bên trong thân hàm giai thừa có lời gọi đến chính nó

Có thể thấy, công việc gọi đệ quy cho phép viết chương trình rất ngắn gọn và tuân theo định nghĩa toán học của hàm

Tuy nhiên, việc sử dụng đệ quy không được khuyến khích vì nó phức tạp quá trình gọi hàm. Trừ khi bắt buộc hoặc không còn lựa chọn nào khác, bạn nên sử dụng vòng lặp thay cho kiểu hàm đệ quy

gọi hàm

Hàm trong PHP rất linh hoạt cả trong khai báo và sử dụng. Một trong những đặc điểm của hàm trong PHP là khả năng gọi hàm từ chuỗi ký tự hoặc tên biến. Để dễ hiểu, hãy cùng xem ví dụ sau đây

function tên_hàm[]{
  Lệnh 1;
  Lệnh 2;
  ...
}
4

Đoạn script này cho phép thực hiện chức năng theo chuỗi người dùng nhập vào

function tên_hàm[]{
  Lệnh 1;
  Lệnh 2;
  ...
}
5

Trong ví dụ trên chúng ta định nghĩa ba hàm thông thường xin chào, tạm biệt và chào mừng

Trong vòng lặp chúng tôi yêu cầu người dùng nhập một chuỗi lệnh. This value string save to variable $command

Please for the special point of the $command variable. bạn có thể biến $command thành lời gọi hàm nếu thêm cặp dấu ngoặc tròn [] vào sau tên biến $command[]. Tính năng này trong PHP được gọi là tên hàm động/gọi hàm động/hàm biến

PHP sẽ tìm và thực thi hàm trùng tên với giá trị của biến

Tính năng này khiến chức năng gọi theo yêu cầu của người dùng trở nên vô cùng đơn giản. Một chuỗi người dùng nhập vào có thể chuyển thẳng thành lời gọi hàm. Nếu không có tính năng này, bạn phải xây dựng các cơ chế ánh xạ yêu cầu với lời gọi hàm, ví dụ, sử dụng lệnh switch-case

Chủ Đề