Hàm là một khối mã có thể tái sử dụng được sử dụng để thực hiện một hành động cụ thể. Chức năng thực hiện một nhiệm vụ cụ thể. Ưu điểm của việc sử dụng hàm là
- Giảm trùng lặp mã
- Phân tách các vấn đề phức tạp thành các phần đơn giản hơn
- Cải thiện sự rõ ràng của mã
- Tái sử dụng mã
- Ẩn thông tin
Có hai loại chức năng cơ bản. Các hàm tích hợp và các hàm do người dùng xác định. Các chức năng tích hợp là một phần của ngôn ngữ PHP. Ví dụ là.
$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";2,
$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";3 hoặc
$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";4. Các chức năng do người dùng xác định được tạo bởi các lập trình viên ứng dụng để đáp ứng nhu cầu của họ. Chúng được tạo bằng từ khóa
$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";5
Các hàm định nghĩa PHP
Một hàm được tạo với từ khóa
$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";5
The function keyword is followed by the function name with round brackets. The body of the function lies between the curly brackets. We say that we call a function. If we call a function, the statements inside the function body are executed.
displayVersion[];Dòng mã này gọi hàm.
$ php simple.php This is PHP 8.1.2Từ khóa trả về PHP
Từ khóa
$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";7 được sử dụng để trả về một giá trị từ hàm. Một hàm có thể hoặc không thể trả về một giá trị.$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";Chúng tôi có một chức năng
$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";8. Nó trả về giá trị tối đa cho hai số. Chúng tôi không thể đặt tên cho nó là tối đa, vì đã có một$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";9 tích hợp sẵn . Ví dụ này được tạo ra cho mục đích học tập; .$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";1Nếu biến
$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";10 lớn hơn$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";11, chúng tôi trả về . Nếu không, chúng tôi trở lại$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";11.$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";6Giá trị trả về bởi hàm
$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";8 được gán cho .$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";9Chúng tôi in giá trị tối đa của hai số ra bàn điều khiển.
Đối số hàm PHP
Hầu hết các chức năng chấp nhận đối số. Đối số là các giá trị được gửi đến hàm. Các hàm xử lý các giá trị và có thể trả về một số kết quả.
$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";0Các giá trị ẩn PHP
Các đối số trong các hàm PHP có thể có các giá trị ẩn. Một giá trị ẩn được sử dụng nếu không có giá trị nào được cung cấp.
$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";1Số đối số của biến PHP
Một hàm có thể chấp nhận số lượng đối số thay đổi. Nói cách khác, đôi khi chúng ta không biết có bao nhiêu đối số sẽ được truyền vào hàm. Hàm
$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";16 trả về một mảng bao gồm một hàm .Toán tử
$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";17 có sẵn để tạo các hàm biến thiên.$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";4Chúng tôi tính toán và trả về tổng của các giá trị.
The function keyword is followed by the function name with round brackets. The body of the function lies between the curly brackets. We say that we call a function. If we call a function, the statements inside the function body are executed.
displayVersion[];0Chúng tôi chuyển ba, bốn và năm giá trị cho hàm
$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";18.The function keyword is followed by the function name with round brackets. The body of the function lies between the curly brackets. We say that we call a function. If we call a function, the statements inside the function body are executed.
displayVersion[];1The function keyword is followed by the function name with round brackets. The body of the function lies between the curly brackets. We say that we call a function. If we call a function, the statements inside the function body are executed.
displayVersion[];2Biến tĩnh PHP
Biến tĩnh là biến được cấp phát tĩnh, . Các biến cục bộ mặc định không giữ lại giá trị của chúng trong các cuộc gọi liên tiếp .
The function keyword is followed by the function name with round brackets. The body of the function lies between the curly brackets. We say that we call a function. If we call a function, the statements inside the function body are executed.
displayVersion[];3Hàm ẩn danh PHP
Hàm ẩn danh không có tên.
The function keyword is followed by the function name with round brackets. The body of the function lies between the curly brackets. We say that we call a function. If we call a function, the statements inside the function body are executed.
displayVersion[];4Lưu ý dấu chấm phẩy sau dấu ngoặc nhọn đóng. Nó là bắt buộc bởi vì cấu trúc là một nhiệm vụ.
The function keyword is followed by the function name with round brackets. The body of the function lies between the curly brackets. We say that we call a function. If we call a function, the statements inside the function body are executed.
displayVersion[];5Hàm ẩn danh thường được sử dụng với hàm mảng.
The function keyword is followed by the function name with round brackets. The body of the function lies between the curly brackets. We say that we call a function. If we call a function, the statements inside the function body are executed.
displayVersion[];6Trong ví dụ này, chúng tôi lọc các giá trị của một mảng với
$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";19. Chức năng vị ngữ được xác định với một chức năng ẩn danh.The function keyword is followed by the function name with round brackets. The body of the function lies between the curly brackets. We say that we call a function. If we call a function, the statements inside the function body are executed.
displayVersion[];7Hàm mũi tên PHP
Các hàm mũi tên cung cấp một cú pháp ngắn gọn hơn cho các hàm ẩn danh. Hàm mũi tên được tạo bằng từ khóa
$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";60 và chất béo .The function keyword is followed by the function name with round brackets. The body of the function lies between the curly brackets. We say that we call a function. If we call a function, the statements inside the function body are executed.
displayVersion[];8Trong ví dụ này, chúng tôi định nghĩa hai hàm mũi tên.
The function keyword is followed by the function name with round brackets. The body of the function lies between the curly brackets. We say that we call a function. If we call a function, the statements inside the function body are executed.
displayVersion[];9$ php simple.php This is PHP 8.1.20Với chức năng mũi tên, mã nhỏ gọn hơn.
Truyền đối số theo giá trị và theo tham chiếu
PHP hỗ trợ hai cách truyền đối số cho hàm. Cách mặc định là truyền đối số theo giá trị. Khi chúng ta truyền đối số theo giá trị, hàm chỉ hoạt động với các bản sao của giá trị. Điều này có thể dẫn đến chi phí hoạt động khi chúng tôi làm việc với lượng lớn dữ liệu.
Khi chúng ta chuyển các giá trị theo tham chiếu, hàm sẽ nhận được một tham chiếu đến . Các giá trị ban đầu bị ảnh hưởng khi sửa đổi. Cách truyền giá trị này tiết kiệm thời gian và không gian hơn. Mặt khác, nó dễ bị lỗi hơn.
Chúng ta nên sử dụng cách truyền đối số nào? . Giả sử chúng tôi có một bộ dữ liệu, tiền lương của nhân viên. Nếu chúng tôi muốn tính toán một số thống kê của dữ liệu, chúng tôi không cần sửa đổi chúng. Chúng tôi vượt qua các giá trị. Nếu chúng ta làm việc với lượng dữ liệu lớn và tốc độ tính toán . Nếu chúng tôi muốn sửa đổi dữ liệu, e. g. thực hiện một số giảm hoặc tăng lương, chúng tôi có thể chuyển qua tham khảo.
Hai ví dụ sau bao gồm cả hai khái niệm.
$ php simple.php This is PHP 8.1.21Lúc đầu, hai biến này được bắt đầu.
$ php simple.php This is PHP 8.1.22Chúng tôi gọi hàm
$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";62. Hàm lấy các biến$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";63 và$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";64 làm tham số.$ php simple.php This is PHP 8.1.23Bên trong hàm
$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";62, chúng tôi thay đổi các giá trị. Lưu ý rằng các biến$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";63 và$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";64 được xác định cục bộ. Chúng chỉ hợp lệ bên trong hàm$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";62.$ php simple.php This is PHP 8.1.24Đầu ra cho thấy các biến ban đầu không bị ảnh hưởng.
Ví dụ mã tiếp theo chuyển các giá trị cho hàm theo tham chiếu. Các biến ban đầu được thay đổi bên trong hàm
$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";62.$ php simple.php This is PHP 8.1.25Ví dụ gần giống với ví dụ trước. Ngoại trừ các ký tự dấu và.
$ php simple.php This is PHP 8.1.26Ở đây chúng ta thấy rằng hàm
$y] { return $x; } else { return $y; } } $a = 23; $b = 32; $val = maximum[$a, $b]; echo "The max of $a and $b is $val \n";62 thực sự đã thay đổi các giá trị .Đệ quy hàm PHP
Đệ quy, trong toán học và khoa học máy tính, là một phương pháp xác định hàm . Nói cách khác, một hàm đệ quy gọi chính nó để thực hiện công việc của nó. Đệ quy là một thay thế cho phép lặp. Đệ quy là cách tiếp cận chính trong các ngôn ngữ chức năng.
Một ví dụ điển hình là phép tính giai thừa.
$ php simple.php This is PHP 8.1.27Bên trong phần thân của hàm giai thừa, chúng ta gọi hàm giai thừa là . Hàm gọi chính nó.
$ php simple.php This is PHP 8.1.28Đây là những kết quả.
Biến toàn cục và cục bộ trong PHP
Tiếp theo chúng ta nói về phạm vi của các biến trong PHP. Phạm vi là phạm vi mà một biến có thể được tham chiếu. Khi chúng ta làm việc với các hàm, có hai phạm vi cơ bản. phạm vi toàn cầu và địa phương. Phạm vi cục bộ còn được gọi là phạm vi chức năng.
Cách chính xác để xác định một chức năng trong PHP là gì?
Hàm là một đoạn mã nhận một đầu vào khác ở dạng tham số, xử lý nó và sau đó trả về một giá trị . Tính năng Hàm PHP là một đoạn mã có thể được sử dụng nhiều lần và chấp nhận danh sách đối số làm đầu vào và trả về giá trị. PHP đi kèm với hàng ngàn tính năng tích hợp.Điều nào sau đây là đúng cách xác định một chức năng?
Sử dụng khai báo hàm để xác định hàm . Nó sẽ thực thi mã bên trong hàm.Cách hợp lệ để bắt đầu một chức năng PHP là gì?
Tên hàm tuân theo các quy tắc giống như các nhãn khác trong PHP. Tên hàm hợp lệ bắt đầu bằng một chữ cái hoặc dấu gạch dưới, theo sau là một số chữ cái, số hoặc dấu gạch dưới bất kỳ . Là một biểu thức chính quy, nó sẽ được thể hiện như vậy. ^[a-zA-Z_\x80-\xff][a-zA-Z0-9_\x80-\xff]*$.