Rumah >pembangunan bahagian belakang >tutorial php >Mengapa WordPress Auto-Escape POST Data Walaupun Selepas Melumpuhkan Petikan Ajaib?

Mengapa WordPress Auto-Escape POST Data Walaupun Selepas Melumpuhkan Petikan Ajaib?

Patricia Arquette
Patricia Arquetteasal
2024-10-26 20:56:03736semak imbas

Why Does WordPress Auto-Escape POST Data Even After Disabling Magic Quotes?

Misteri Auto-Escape Data POST dalam WordPress

Walaupun melumpuhkan petikan sihir melalui php.ini, PHP dan WordPress terus auto-escape Data POST yang mengandungi petikan tunggal. Isu yang membingungkan ini telah menyebabkan pembangun menggaru kepala.

Origin WordPress Auto-Escaping

Punca auto-escape terletak pada proses bootstrapping WordPress. Apabila WordPress dimulakan, ia mengaktifkan kod yang secara automatik melepaskan aksara tertentu dalam input pengguna.

Penyelesaian untuk Auto-Escaping

Untuk menyelesaikan isu ini, adalah disyorkan untuk mengatasi pembolehubah global buat sementara waktu menggunakan kod berikut:

$_GET = array_map('stripslashes_deep', $_GET);
$_POST = array_map('stripslashes_deep', $_POST);
$_COOKIE = array_map('stripslashes_deep', $_COOKIE);
$_SERVER = array_map('stripslashes_deep', $_SERVER);
$_REQUEST = array_map('stripslashes_deep', $_REQUEST);

Sebagai alternatif, anda boleh mempertimbangkan untuk menggunakan pendekatan yang lebih disasarkan dengan "membuang secara setempat" dan bukannya menimpa superglobals. Contohnya:

$post = array_map('stripslashes_deep', $_POST);

Pertimbangan Tambahan

Menulis ganti superglobals berpotensi memberi kesan kepada bahagian lain aplikasi anda. Oleh itu, nilai dengan teliti sama ada ia sesuai untuk situasi khusus anda.

Pemahaman lanjut daripada @Alexandar O'Mara dan @quickshiftin memberikan perspektif yang berharga tentang topik ini.

Atas ialah kandungan terperinci Mengapa WordPress Auto-Escape POST Data Walaupun Selepas Melumpuhkan Petikan Ajaib?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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