Rumah >pembangunan bahagian belakang >tutorial php >Mengapakah Penetapan melalui Rujukan daripada Nilai Pulangan Ungkapan \'baru\' Dihentikan dalam PHP?
Dihentikan Penetapan melalui Rujukan
Dalam versi PHP yang lebih awal, adalah amalan biasa untuk menetapkan objek dan struktur data lain dengan merujuk menggunakan " &" pengendali. Walau bagaimanapun, amalan ini telah ditamatkan dalam PHP5 dan lebih tinggi. Apabila cuba memberikan nilai pulangan ungkapan "baharu" melalui rujukan, pembangun mungkin menghadapi mesej ralat "Menetapkan nilai pulangan baharu melalui rujukan tidak digunakan lagi."
Sebab Penamatan
Pemberhentian pemberian melalui rujukan daripada ungkapan "baharu" bertujuan untuk meningkatkan kebolehselenggaraan dan prestasi kod. Secara lalai, objek yang dibuat menggunakan "baru" diluluskan oleh nilai, memastikan setiap objek mempunyai ruang ingatan sendiri. Menetapkan melalui rujukan boleh membawa kepada kekeliruan dan kesan sampingan yang tidak dijangka apabila bekerja dengan berbilang objek, kerana kemas kini yang dibuat pada satu objek secara tidak sengaja boleh menjejaskan objek lain yang berkongsi rujukan yang sama.
Penyelesaian Ralat
Untuk menyelesaikan isu ini, cuma alih keluar pengendali "&" daripada pernyataan tugasan. Kod berikut adalah sah dalam PHP5 dan lebih tinggi:
<code class="php">$obj_md = new MDB2();</code>
Jika ralat berterusan walaupun selepas mengalih keluar pengendali "&", semak kod anda untuk kemungkinan ralat sintaks atau konflik dengan tetapan PHP yang lain. Sesetengah konfigurasi PHP mungkin masih membenarkan ciri yang ditamatkan, jadi anda disyorkan untuk mengesahkan tetapan error_reporting anda dalam fail php.ini anda.
Atas ialah kandungan terperinci Mengapakah Penetapan melalui Rujukan daripada Nilai Pulangan Ungkapan \'baru\' Dihentikan dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!