Làm cách nào để truyền tham số cho một hàm trong PHP?

Theo mặc định, các biến PHP được truyền theo giá trị dưới dạng đối số hàm trong PHP. Khi các biến trong PHP được truyền theo giá trị, phạm vi của biến được xác định ở cấp hàm bị ràng buộc trong phạm vi của hàm. Thay đổi một trong hai biến không có bất kỳ ảnh hưởng nào đến một trong hai biến

Ví dụ




Function geeksforgeeks 
Function geeksforgeeks
4

Function geeksforgeeks 
Function geeksforgeeks
5

Function geeksforgeeks 
Function geeksforgeeks
6

Function geeksforgeeks 
Function geeksforgeeks
7

Function geeksforgeeks 
Function geeksforgeeks
8

Function geeksforgeeks 
Function geeksforgeeks
9
Function geeksforgeeks 
Function geeksforgeeks
0
Function geeksforgeeks 
Function geeksforgeeks
1
Function geeksforgeeks 
Function geeksforgeeks
0

Function geeksforgeeks 
Function geeksforgeeks
1
Function geeksforgeeks 
Function geeksforgeeks
1
Function geeksforgeeks 
Function geeksforgeeks
3
Function geeksforgeeks 
Function geeksforgeeks
4
Function geeksforgeeks 
Function geeksforgeeks
5
Function geeksforgeeks 
Function geeksforgeeks
6
Function geeksforgeeks 
Function geeksforgeeks
7

Function geeksforgeeks 
Function geeksforgeeks
5

_______01____240

Function geeksforgeeks 
Function geeksforgeeks
1____242
Function geeksforgeeks 
Function geeksforgeeks
43
Function geeksforgeeks 
Function geeksforgeeks
1
Function geeksforgeeks 
Function geeksforgeeks
45

Function geeksforgeeks 
Function geeksforgeeks
46

Function geeksforgeeks 
Function geeksforgeeks
5

Function geeksforgeeks 
Function geeksforgeeks
48

Function geeksforgeeks 
Function geeksforgeeks
1
Function geeksforgeeks 
Function geeksforgeeks
3
Function geeksforgeeks 
Function geeksforgeeks
51
Function geeksforgeeks 
Function geeksforgeeks
5
Function geeksforgeeks 
Function geeksforgeeks
6
Function geeksforgeeks 
Function geeksforgeeks
7

Function geeksforgeeks 
Function geeksforgeeks
0
Function geeksforgeeks 
Function geeksforgeeks
1
Function geeksforgeeks 
Function geeksforgeeks
45

Function geeksforgeeks 
Function geeksforgeeks
42
Function geeksforgeeks 
Function geeksforgeeks
43____31
Function geeksforgeeks 
Function geeksforgeeks
45

Function geeksforgeeks 
Function geeksforgeeks
62

đầu ra.

Function geeksforgeeks 
Function geeksforgeeks
3

Chuyển qua tham chiếu. Khi các biến được truyền theo tham chiếu, cần sử dụng ký hiệu & (dấu và) trước đối số biến. Ví dụ. hàm( &$x ). Phạm vi của cả biến toàn cục và biến hàm trở thành toàn cầu vì cả hai biến được xác định bởi cùng một tham chiếu. Vì vậy, mỗi khi biến toàn cục thay đổi thì biến bên trong hàm cũng thay đổi theo và ngược lại.

Các hàm được tham số hóa trong PHP là các hàm có tham số. Bạn có thể truyền bất kỳ số lượng tham số nào bên trong một hàm. Các tham số được truyền này hoạt động như các biến bên trong hàm của bạn

Chúng được chỉ định bên trong dấu ngoặc đơn, sau tên hàm

Đầu ra phụ thuộc vào các giá trị động được truyền dưới dạng tham số vào hàm


Ví dụ tham số hóa PHP 1

Cộng và trừ

Trong ví dụ này, chúng ta đã truyền hai tham số $x và $y bên trong hai hàm add() và sub()

đầu ra

Làm cách nào để truyền tham số cho một hàm trong PHP?

Ví dụ tham số hóa PHP 2

Phép cộng và phép trừ với số động

Trong ví dụ này, chúng ta đã truyền hai tham số $x và $y bên trong hai hàm add() và sub()

đầu ra

Làm cách nào để truyền tham số cho một hàm trong PHP?

Chúng tôi đã thông qua số sau,

Làm cách nào để truyền tham số cho một hàm trong PHP?

Bây giờ nhấp vào nút THÊM, chúng tôi nhận được đầu ra sau

Làm cách nào để truyền tham số cho một hàm trong PHP?

Bây giờ, nhấp vào nút SUBTRACTION, chúng tôi nhận được đầu ra sau

Làm cách nào để truyền tham số cho một hàm trong PHP?

Một hàm trong PHP có thể được định nghĩa để chấp nhận đầu vào từ việc gọi môi trường/tập lệnh dưới dạng đối số. Các đối số này được đưa ra dưới dạng danh sách được phân tách bằng dấu phẩy bên trong dấu ngoặc đơn trước tên hàm. Lưu ý rằng trong khi gọi một hàm, phải truyền cùng một số đối số cho nó

PHP hỗ trợ gọi một hàm bằng cách truyền giá trị, tham chiếu, đối số với giá trị mặc định và bằng cách truyền số lượng đối số thay đổi

chức năng với các đối số

Trong ví dụ sau, một hàm được định nghĩa với hai đối số hình thức. Khi hàm này được gọi bằng cách chuyển đối số theo giá trị. Các đối số của hàm trở thành các biến cục bộ của nó. Do đó, mọi thay đổi về giá trị của đối số bên trong hàm không phản ánh bên ngoài nó

Ở đây, giá trị của $x được thay đổi bên trong hàm, nhưng nếu chúng ta kiểm tra giá trị của nó sau khi gọi hàm thì nó không thay đổi

Ví dụ

Bản thử trực tiếp

Function geeksforgeeks 
Function geeksforgeeks
4

đầu ra

Điều này sẽ tạo ra kết quả sau. -

Function geeksforgeeks 
Function geeksforgeeks
5

Truyền mảng cho hàm

Trong ví dụ sau, hàm add() được định nghĩa để nhận mảng làm đối số. Bên trong hàm, các phần tử mảng được duyệt qua vòng lặp foreach

Ví dụ

Bản thử trực tiếp

đầu ra

Điều này sẽ tạo ra kết quả sau. -

Function geeksforgeeks 
Function geeksforgeeks
6

Truyền đối số bằng tham chiếu

Các giá trị được truyền cho các đối số của hàm theo giá trị. Do đó, những thay đổi đối với giá trị của đối số bên trong hàm không được phản ánh bên ngoài nó. Khi các đối số được truyền theo tham chiếu, các thay đổi được chuyển sang giá trị của đối số bên ngoài nó

Để nhận giá trị theo tham chiếu, tên của đối số phải có tiền tố là ký hiệu $

Ví dụ

Bản thử trực tiếp

Function geeksforgeeks 
Function geeksforgeeks
7

đầu ra

Điều này sẽ tạo ra kết quả sau. -

Function geeksforgeeks 
Function geeksforgeeks
8

Giá trị của biến $x và $y được hoán đổi cho nhau trong hàm swap(). Vì, các biến được truyền theo tham chiếu, nên các biến cũng hiển thị các giá trị đã sửa đổi bên ngoài hàm

Gợi ý kiểu (Khai báo kiểu)

PHP trên thực tế là một ngôn ngữ kiểu động. Do đó, không cần thiết phải khai báo một biến với kiểu của nó (như trong C/C++ hoặc Java). Tuy nhiên, khai báo kiểu của các đối số trong một hàm cho phép trình phân tích cú pháp phát hiện các kiểu dữ liệu không chính xác được truyền cho hàm

cú pháp

Function geeksforgeeks 
Function geeksforgeeks
9

Tất cả các kiểu dữ liệu PHP tiêu chuẩn bao gồm các kiểu vô hướng, mảng, lớp/giao diện, có thể lặp lại và đối tượng là các kiểu hợp lệ để cung cấp gợi ý kiểu trong khai báo hàm

Ví dụ

Bản thử trực tiếp

Function geeksforgeeks 
Function geeksforgeeks
0

đầu ra

Điều này sẽ tạo ra kết quả sau. -

Function geeksforgeeks 
Function geeksforgeeks
1

Cũng có thể lấy danh sách các đối số được truyền cho một hàm với sự trợ giúp của hàm func_get_args(). Chúng ta có thể chạy một vòng lặp PHP để duyệt qua từng giá trị trong danh sách các đối số được truyền. Trong trường hợp đó, định nghĩa hàm không có đối số chính thức

Ví dụ

Bản thử trực tiếp

Function geeksforgeeks 
Function geeksforgeeks
2

đầu ra

Điều này sẽ tạo ra kết quả sau. -

Function geeksforgeeks 
Function geeksforgeeks
3

Lưu ý rằng trong lần gọi hàm add() thứ hai, số float được đưa ra làm đối số, nhưng vẫn không có lỗi/cảnh báo nào được hiển thị. Điều này là do nội bộ PHP buộc float thành số nguyên để thực hiện phép cộng. Để ngăn chuyển đổi loại tự động như vậy, hãy sử dụng khai báo cấu trúc với nghiêm ngặt_types=1

Làm cách nào để chuyển chuỗi thành hàm trong PHP?

Truyền đối số bằng tham chiếu ¶ . $str = 'Đây là một chuỗi, '; add_some_extra($str); echo $str; // outputs 'This is a string, and something extra.

Hàm tham số trong PHP là gì?

Các hàm được tham số hóa PHP . Chúng được khai báo bên trong dấu ngoặc, sau tên hàm. Tham số là giá trị bạn chuyển đến hàm hoặc chiến lược . Nó có thể là một vài giá trị được đặt trong một biến hoặc một giá trị theo nghĩa đen mà bạn chuyển nhanh chóng.

Làm cách nào để chuyển n số đối số trong PHP?

PHP hỗ trợ hàm đối số có độ dài thay đổi. Nó có nghĩa là bạn có thể truyền 0, 1 hoặc n số đối số trong hàm. Để làm như vậy, bạn cần sử dụng 3 dấu chấm lửng (dấu chấm) trước tên đối số . Khái niệm 3 dấu chấm được triển khai cho đối số có độ dài thay đổi kể từ PHP 5. 6.