Một số chức năng trong php

PHP là ngôn ngữ kịch bản máy chủ và là công cụ mạnh mẽ để tạo các trang Web động và tương tác

PHP là một giải pháp thay thế được sử dụng rộng rãi, miễn phí và hiệu quả cho các đối thủ cạnh tranh như ASP của Microsoft

Bắt đầu học PHP ngay bây giờ »

Học dễ dàng với "PHP Tryit"

Với trình chỉnh sửa "PHP Tryit" trực tuyến của chúng tôi, bạn có thể chỉnh sửa mã PHP và nhấp vào nút để xem kết quả

Thí dụ



echo "Tập lệnh PHP đầu tiên của tôi. ";
?>


Tự mình thử »

Nhấp vào nút "Tự dùng thử" để xem nó hoạt động như thế nào

Bài tập PHP

Kiểm tra bản thân với các bài tập

Tập thể dục

Chèn phần còn thiếu của mã bên dưới để xuất "Xin chào thế giới"


Cung cấp câu trả lời "

Ví dụ PHP

Tìm hiểu bằng các ví dụ. Hướng dẫn này bổ sung tất cả các giải thích với các ví dụ rõ ràng

Xem tất cả các ví dụ về PHP

Bài kiểm tra PHP

Học bằng cách làm bài kiểm tra. Bài kiểm tra này sẽ cung cấp cho bạn tín hiệu về mức độ bạn biết hoặc không biết về PHP

Bắt đầu bài kiểm tra PHP

Việc học của tôi

Theo dõi tiến trình của bạn với chương trình "Học tập của tôi" miễn phí tại W3Schools

Đăng nhập vào tài khoản của bạn và bắt đầu kiếm điểm

Đây là một tính năng tùy chọn. Bạn có thể học W3Schools mà không cần sử dụng My Learning


Tài liệu tham khảo PHP

Tài liệu tham khảo PHP của W3Schools chứa các danh mục khác nhau của tất cả các hàm, từ khóa và hằng số PHP, cùng với các ví dụ

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ó

NỘI DUNG CỦA BẢNG

Đị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 an array [coi như là 1 giá trị duy nhất] và trả lại an toàn cho kết quả này.

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 phải 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. Lưu chuỗi giá trị này vào biến $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ủ Đề