Mảng có được truyền bằng tham chiếu trong PHP không?

Bản thân từ chuyển qua tham chiếu của Ngôn ngữ lập trình PHP nói rằng bất cứ khi nào các biến được truyền theo tham chiếu thì ký hiệu dấu và [&] sẽ được thêm ngay trước đối số/đối số của biến. Bây giờ hãy lấy một ví dụ mẫu “hàm[&$x]”, ở đây phạm vi của cả biến toàn cục và biến hàm đều trở thành các giá trị toàn cục vì chúng được xác định bằng cùng một khái niệm tham chiếu. Vì vậy, bất cứ khi nào biến toàn cục sẽ bị thay đổi thì biến bên trong hàm cũng sẽ thay đổi và ngược lại và nó sẽ được áp dụng cho tất cả những điều này

Gói phát triển phần mềm tất cả trong một[hơn 600 khóa học, hơn 50 dự án]

Giá bán
Xem các khóa học

Hơn 600 khóa học trực tuyến. hơn 50 dự án. Hơn 3000 giờ. Giấy chứng nhận có thể kiểm chứng. Truy cập trọn đời
4. 6 [86.007 xếp hạng]

Cú pháp và tham số

Bắt đầu khóa học phát triển phần mềm miễn phí của bạn

Phát triển web, ngôn ngữ lập trình, kiểm thử phần mềm và những thứ khác

function function_name[&$function_parameter]{
..
..
}

Giải thích về các tham số của PHP vượt qua tham chiếu

  • Tên chức năng. Tham số function_name không là gì ngoài tên của hàm do người dùng định nghĩa. Người ta có thể đặt tên cho bất cứ thứ gì dựa trên yêu cầu của bạn và dựa trên nhiệm vụ
  • Hàm_tham số. Đây là tham số biến được sử dụng để chuyển qua tham chiếu trong Ngôn ngữ lập trình PHP. Tham số biến này có thể là bất cứ thứ gì. Nó cũng do người dùng định nghĩa và có thể được đặt tên thành bất kỳ thứ gì dựa trên yêu cầu viết mã của bạn. Nhưng nó phải được biểu thị bằng ký hiệu dấu và [&]

Làm cách nào để chuyển qua tham chiếu hoạt động trong PHP?

Chuyển qua tham chiếu của Ngôn ngữ lập trình PHP về cơ bản chỉ hoạt động bằng cách bỏ qua biến/các biến theo tham chiếu với sự trợ giúp của ký hiệu dấu và [&] ngay trước đối số của biến. Nếu chúng ta chuyển một biến theo khái niệm tham chiếu thì một hàm có thể có khả năng sửa đổi biến đó. Theo cách này, khái niệm chuyển qua tham chiếu PHP hoạt động và đó là một khái niệm quan trọng cần biết trong một số trường hợp viết mã. Đối với một số phiên bản PHP, khái niệm chuyển qua tham chiếu không hoạt động tốt. Trong PHP5. 3. 0, bạn sẽ gặp cảnh báo nói rằng “tham chiếu chuyển thời gian cuộc gọi” và trong PHP 5. 4. 0, thời gian gọi chuyển qua tham chiếu sẽ bị xóa nên việc sử dụng nó sẽ gây ra một số lỗi nghiêm trọng trong một số phiên bản PHP

Các ví dụ để triển khai PHP Pass by Reference

Dưới đây là các ví dụ được đề cập

Ví dụ 1

Đây là ví dụ minh họa khái niệm pass by reference của Ngôn ngữ lập trình PHP. Ở đây, đầu tiên, một hàm “calculate[]” được tạo cùng với tham số hàm tham chiếu “$a1”. Sau đó, bên trong hàm, giá trị biến đó được tăng lên. Thì sau khi ra khỏi hàm giá trị biến “$a1” được khai báo là “5”. Sau đó, bằng cách sử dụng giá trị chức năng echo của $a1 sẽ được in và sau đó hàm tính toán [] được gọi. Sau khi gọi hàm, hàm echo được sử dụng lại và lần này giá trị biến sẽ được in là “6” do tăng dần

Mã số

đầu ra

Ví dụ #2

Đây cũng là một ví dụ minh họa khái niệm tương tự của ngôn ngữ PHP nhưng ở đây giá trị chuỗi được sử dụng thay vì sử dụng giá trị số như ví dụ 1. Ở đây hàm print_string[] có một biến “string1” sau ký hiệu dấu và. Sau đó, bên trong hàm, giá trị biến chuỗi1 được gán là “Hàm vì lợi ích” và sau đó được sử dụng để in giá trị biến chuỗi1. Sau đó, bên ngoài hàm, một lần nữa, giá trị biến string1 được gán là “Global sake”. Sau đó, một lần nữa biến $string1 được in bằng chức năng in nhưng lần này giá trị chuỗi hiện diện bên trong hàm được in chứ không phải giá trị toàn cầu. Điều này là do cùng một khái niệm về PHP

Mã số

đầu ra

Ví dụ #3

Ví dụ này tương tự như ví dụ 2 nhưng ở đây ký hiệu dấu và không được sử dụng chỉ để đảm bảo điều gì sẽ xảy ra nếu nó không được sử dụng. Nếu ký hiệu và không được sử dụng, chúng ta cũng có thể gọi nó là khái niệm chuyển theo giá trị. Vì vậy, đừng quên sử dụng ký hiệu & trước các tham số biến của hàm nếu bạn không có khả năng. Ở đây, ở đầu ra bản in thứ hai, bạn sẽ nhận được “Rượu sake toàn cầu” vì thiếu khái niệm tham chiếu. Chỉ cần kiểm tra kết quả đầu ra của ví dụ 2 và ví dụ 3 để hiểu rõ hơn về khái niệm này

Mã số

Chủ Đề