Hướng dẫn discuss parameter passing by value and reference in php - thảo luận về việc truyền tham số theo giá trị và tham chiếu trong php
Trong bài viết này, chúng tôi sẽ tìm hiểu về vượt qua giá trị và vượt qua bằng cách tham khảo trong PHP. & NBSP; Show Bây giờ, hãy để hiểu chi tiết hai khái niệm này. Trong PHP nói chung, chúng tôi đã làm theo để chuyển các đối số cho hàm với cách tiếp cận giá trị được truyền. Chúng tôi đang tuân theo thực tiễn này bởi vì nếu giá trị của đối số trong hàm được thay đổi, nó không bị thay đổi bên ngoài hàm. Trong một số trường hợp, chúng ta có thể cần sửa đổi các đối số chức năng, vì vậy để cho phép một hàm sửa đổi các đối số của nó, chúng phải được truyền bằng cách tham chiếu. Hãy bắt đầu bằng việc được thông qua bởi tham chiếu. Vì nó đã được đề cập, chúng tôi có thể chuyển một biến bằng cách tham chiếu đến một hàm để hàm có thể sửa đổi biến. Để bắt đầu quá trình truyền các tham số được truyền qua tham chiếu, hãy dành cho một ampersand và) cho tên đối số trong định nghĩa hàm. Thí dụHãy kiểm tra điều này với một ví dụ đơn giản. Đầu ra6 Giải trìnhỞ đây chúng tôi đã khai báo biến $ a và chuyển nó dưới dạng thông qua tham chiếu đến hàm tính toán (). Vì vậy, như nguyên tắc nói rằng nếu giá trị của $ a được thay đổi bên trong hàm thì nó cũng sẽ thay đổi bên ngoài hàm. Ghi chúKhông có dấu hiệu tham chiếu trên một cuộc gọi chức năng - chỉ trên các định nghĩa chức năng. Định nghĩa chức năng một mình là đủ để vượt qua chính xác đối số bằng cách tham khảo. Điều này không được dùng trong phiên bản 5.4 của PHP khi bạn sử dụng để tính toán (& $ a); Nó ném một lỗi. Thí dụHãy kiểm tra điều này với một ví dụ đơn giản. "; } $a=5; calculate($a); echo $a; ?> Đầu ra6 5 Giải trìnhỞ đây chúng tôi đã khai báo biến $ a và chuyển nó dưới dạng thông qua tham chiếu đến hàm tính toán (). Vì vậy, như nguyên tắc nói rằng nếu giá trị của $ a được thay đổi bên trong hàm thì nó cũng sẽ thay đổi bên ngoài hàm.
Ghi chú
Tianyiw tại VIP Dot qq dot com ¶
Những điều sau đây có thể được thông qua bằng cách tham khảo:
Không có biểu thức nào khác nên được truyền qua tham chiếu, vì kết quả không được xác định. Ví dụ: các ví dụ sau về việc truyền qua tham chiếu không hợp lệ:
Tnestved tại Yahoo Dot Com ¶ ¶ 8 năm trước
ccb_bc tại hotmail dot com ¶ ¶ 3 năm trước
60 61 Mike tại Eastghost Dot Com ¶ ¶ 7 năm trước 62 63 64 65 Nickshanks tại Nickshanks Dot Com ¶ ¶ 5 năm trước 66 67 68 69 Rob tại Librobert Dot Net ¶ 11 thàng trước "; } $a=5; calculate($a); echo $a; ?>0 "; } $a=5; calculate($a); echo $a; ?>1 "; } $a=5; calculate($a); echo $a; ?>2 "; } $a=5; calculate($a); echo $a; ?>3 "; } $a=5; calculate($a); echo $a; ?>4 "; } $a=5; calculate($a); echo $a; ?>5 65 Jason Steelman ¶ ¶ 2 năm trước "; } $a=5; calculate($a); echo $a; ?>7 "; } $a=5; calculate($a); echo $a; ?>8 65 PHPNet tại Holodyn dot com ¶ ¶ 8 năm trước 6 50 6 51 65 ccb_bc tại hotmail dot com ¶ ¶ 3 năm trước 6 53 6 54 6 55 6 56 6 57 6 58 Mike tại Eastghost Dot Com ¶ ¶ 2 năm trước 6 59
65 PHPNet tại Holodyn dot com ¶ ¶ diabolos @t gmail dot com
function foo(&$var) 710 năm trước ¶ Yiangforwork tại Gmail Dot Com ¶
foo($a) 3Tianyiw tại VIP Dot qq dot com ¶ ¶ 5 năm trước
65 Rob tại Librobert Dot Net ¶ 7 năm trước
65 Nickshanks tại Nickshanks Dot Com ¶ ¶ 18 năm trước
function foo(&$var) 5Pillepop2003 tại Yahoo Dot de ¶ ¶ 17 năm trước
65 obkvresovl tại nospam dot hotmail dot com ¶ ¶ 17 năm trước
function foo(&$var) 5obkvresovl tại nospam dot hotmail dot com ¶ ¶ pallsopp tại gmail dot com ¶
65 Có nghĩa là gì bằng cách truyền một tham số theo giá trị và bằng cách tham chiếu?Vượt qua giá trị của người Viking đề cập đến việc truyền một bản sao của giá trị. Đi qua tham chiếu, đề cập đến việc truyền tham chiếu thực của biến trong bộ nhớ. “Passing by reference” refers to passing the real reference of the variable in memory.
Tham số truyền trong PHP là gì?Các hàm tham số PHP là các hàm với các tham số.Bạn có thể vượt qua bất kỳ số lượng tham số 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 chức năng của bạn.Chúng được chỉ định bên trong dấu ngoặc đơn, sau tên hàm.You can pass any number of parameters inside a function. These passed parameters act as variables inside your function. They are specified inside the parentheses, after the function name.
Tham số đi qua tham chiếu là gì?Đi qua bởi tham chiếu đề cập đến một phương thức chuyển địa chỉ của một đối số trong hàm gọi cho một tham số tương ứng trong hàm được gọi.Trong C, tham số tương ứng trong hàm được gọi phải được khai báo là loại con trỏ.a method of passing the address of an argument in the calling function to a corresponding parameter in the called function. In C, the corresponding parameter in the called function must be declared as a pointer type.
Tham số đi qua giá trị là gì?Khi bạn sử dụng từng giá trị, trình biên dịch sẽ sao chép giá trị của đối số trong hàm gọi thành tham số không phải con trỏ hoặc không tham chiếu tương ứng trong định nghĩa hàm được gọi.Tham số trong hàm được gọi được khởi tạo với giá trị của đối số được truyền.the compiler copies the value of an argument in a calling function to a corresponding non-pointer or non-reference parameter in the called function definition. The parameter in the called function is initialized with the value of the passed argument. |