Menyelesaikan Ralat "Tidak Boleh Melepasi Parameter 2 melalui Rujukan" dalam PHP
Apabila bekerja dengan PHP, anda mungkin menghadapi ralat berikut:
Fatal error: Cannot pass parameter 2 by reference in /web/stud/openup/inactivatesession.php on line 13
Ralat ini menunjukkan bahawa kod PHP anda cuba melepasi parameter kedua fungsi atau kaedah dengan rujukan, tetapi parameter tidak dikenal pasti dengan betul sebagai rujukan.
Memahami Ralat
Kaedah bind_param() PHP menjangkakan parameter kedua menjadi rujukan kepada pembolehubah. Walau bagaimanapun, dalam kod yang disediakan:
$update->bind_param("is", 0, $selectedDate); //LINE 13
Parameter kedua, 0, sedang diluluskan sebagai nilai integer, bukan rujukan kepada pembolehubah. Percanggahan ini menyebabkan ralat.
Membetulkan Ralat
Untuk menyelesaikan ralat ini, anda perlu menghantar rujukan kepada pembolehubah dan bukannya integer. Ini boleh dicapai dengan menggunakan kod berikut:
$a = 0; $update->bind_param("is", $a, $selectedDate); //LINE 13
Dengan memberikan nilai integer kepada pembolehubah ($a) dan kemudian menghantar rujukan pembolehubah itu, anda memastikan bahawa parameter itu diluluskan melalui rujukan seperti yang diperlukan.
Maklumat Tambahan
Untuk pemahaman yang lebih teliti tentang apa yang menyebabkan perkara ini ralat, rujuk dokumentasi PHP tentang rujukan: http://php.net/manual/en/language.references.pass.php
Atas ialah kandungan terperinci Mengapa Kod PHP Saya Membuang Ralat 'Tidak Boleh Melepasi Parameter 2 dengan Rujukan' dan Bagaimana Saya Boleh Membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!