Rumah > pembangunan bahagian belakang > tutorial php > Bagaimanakah Saya Boleh Menghalang `json_encode()` Daripada Melarikan Diri Garis Ke Hadapan dalam PHP?

Bagaimanakah Saya Boleh Menghalang `json_encode()` Daripada Melarikan Diri Garis Ke Hadapan dalam PHP?

Susan Sarandon
Lepaskan: 2024-11-27 12:24:14
asal
819 orang telah melayarinya

How Can I Prevent `json_encode()` From Escaping Forward Slashes in PHP?

json_encode() Melarikan Diri Garis Ke Hadapan

Apabila menyahkod JSON daripada Instagram, adalah perkara biasa untuk menghadapi garis miring ke hadapan yang terlepas semasa pengekodan semula dan caching data tersebut. Ini disebabkan oleh json_encode() secara automatik melarikan diri garis miring ke hadapan secara lalai.

Melumpuhkan Forward Slash Escaping

Nasib baik, PHP 5.4 menawarkan penyelesaian untuk melumpuhkan tingkah laku melarikan diri ini menggunakan Bendera JSON_UNESCAPED_SLASHES. Begini cara untuk menggunakannya:

json_encode($data, JSON_UNESCAPED_SLASHES);
Salin selepas log masuk

Dengan menetapkan bendera ini, json_encode() akan mengekalkan garis miring ke hadapan tanpa terlepas.

Awas untuk Konteks Web/HTML

Adalah penting untuk ambil perhatian bahawa melumpuhkan slash ke hadapan melarikan diri dalam konteks web/HTML (cth., menyampaikan data JSON kepada penyemak imbas) boleh memperkenalkan kelemahan keselamatan. Garis miring yang dilepaskan adalah penting untuk mengelakkan serangan skrip silang tapak (XSS). Oleh itu, penggunaan JSON_UNESCAPED_SLASHES perlu dipertimbangkan dengan teliti dalam senario sedemikian.

Untuk Versi PHP Sebelum 5.4

Jika anda menggunakan versi PHP sebelum 5.4, anda boleh mengubah suai fungsi sedia ada seperti json_encode_no_backslashes() (tersedia di https://snippets.dzone.com/posts/show/7487) untuk memenuhi keperluan anda.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menghalang `json_encode()` Daripada Melarikan Diri Garis Ke Hadapan dalam PHP?. 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