Rumah > pembangunan bahagian belakang > tutorial php > Bagaimanakah Saya Boleh Membetulkan Ralat PHP 5.4 \'Rujukan Laluan Masa Panggilan telah dialih keluar\'?

Bagaimanakah Saya Boleh Membetulkan Ralat PHP 5.4 \'Rujukan Laluan Masa Panggilan telah dialih keluar\'?

Barbara Streisand
Lepaskan: 2024-11-28 07:40:13
asal
255 orang telah melayarinya

How Can I Fix the PHP 5.4

Membetulkan PHP 5.4 Isu Rujukan Laluan Masa Panggilan

Pengenalan PHP 5.4 menandakan penyingkiran pas masa panggilan- rujukan sampingan, mengakibatkan ralat "Rujukan pas-masa panggilan telah dialih keluar" yang digeruni. Ralat ini berlaku apabila pembolehubah dihantar ke dalam fungsi sebagai rujukan dalam kod warisan.

Mudah Betulkan atau Selesaikan Tulis Semula?

Tiada penyelesaian mudah untuk isu ini. Masalahnya berpunca daripada cara rujukan diisytiharkan dalam definisi fungsi, bukan panggilan fungsi. Dokumentasi PHP menyatakan bahawa "Tiada tanda rujukan pada panggilan fungsi - hanya pada definisi fungsi."

Tulis Semula Kod Legasi

Sejak PHP mula mengeluarkan ralat penamatan untuk panggilan -rujukan berlalu masa dalam versi 5.3, adalah sangat disyorkan untuk menulis semula kod warisan untuk mengelakkan potensi masalah keserasian dalam masa hadapan.

Contoh Tulis Semula

Daripada:

// Wrong way!
myFunc(&$arg); // Deprecated pass-by-reference argument
function myFunc($arg) { }
Salin selepas log masuk

Gunakan:

// Right way!
myFunc($arg); // pass-by-value argument
function myFunc(&$arg) { }
Salin selepas log masuk

Dengan mengisytiharkan rujukan dalam fungsi definisi, anda memastikan bahawa PHP akan lulus hujah dengan rujukan tanpa memerlukan sintaks yang tidak digunakan dalam fungsi panggilan.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membetulkan Ralat PHP 5.4 \'Rujukan Laluan Masa Panggilan telah dialih keluar\'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan