Anda telah menghadapi isu di mana setiap petikan dwi dalam rentetan yang anda sedang proses dilarikan dengan garis serong ke belakang. Selepas beberapa penyiasatan, anda telah menyedari bahawa ini disebabkan oleh konfigurasi pelayan yang dipanggil petikan ajaib.
Apakah Petikan Ajaib?
Petikan ajaib ialah tetapan dalam PHP yang secara automatik melepaskan aksara tertentu, termasuk petikan tunggal dan berganda, dalam data borang dan input lain. Tujuannya adalah untuk menghalang suntikan SQL dan kelemahan keselamatan yang lain.
Penyelesaian Menggunakan stripslashes()
Untuk menyelesaikan isu ini, gunakan fungsi stripslashes() untuk mengalih keluar tambahan garis miring ke belakang:
if (get_magic_quotes_gpc()) { $text = stripslashes($text); }
Ini akan mengalih keluar garis miring tambahan daripada $text, membolehkan anda bekerja dengan data seperti yang dijangkakan.
Lumpuhkan Petikan Sihir?
Sama ada untuk melumpuhkan petikan sihir atau tidak bergantung pada situasi khusus anda dan toleransi risiko:
Jika anda memutuskan untuk melumpuhkan petikan ajaib, pastikan anda menguji aplikasi anda dengan teliti dan menangani sebarang kemungkinan kebimbangan keselamatan.
Atas ialah kandungan terperinci Mengapa Petikan Saya Dilepaskan dengan Garis Segaris Belakang dalam PHP, dan Bagaimana Saya Boleh Membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!