Rumah > pembangunan bahagian belakang > tutorial php > Bagaimanakah Saya Boleh Melewati Rentetan PHP dengan Selamat kepada Pembolehubah JavaScript, Mengendalikan Aksara Khas?

Bagaimanakah Saya Boleh Melewati Rentetan PHP dengan Selamat kepada Pembolehubah JavaScript, Mengendalikan Aksara Khas?

Susan Sarandon
Lepaskan: 2024-12-22 18:47:11
asal
762 orang telah melayarinya

How Can I Safely Pass a PHP String to a JavaScript Variable, Handling Special Characters?

Melalukan Pembolehubah PHP kepada Pembolehubah JavaScript dengan Pengekodan Rentetan

Apabila berurusan dengan rentetan PHP yang mengandungi aksara khas, seperti petikan atau baris baharu, ia menjadi mencabar untuk mengeluarkannya terus ke dalam pembolehubah JavaScript. Untuk mengatasinya, kita perlu mengekod rentetan PHP sebelum menghantarnya.

Satu penyelesaian yang berkesan ialah menggunakan fungsi json_encode():

<script>
  var myvar = <?= json_encode($myVarValue, JSON_UNESCAPED_UNICODE); ?>;
</script>
Salin selepas log masuk

Begini cara ia berfungsi:

  • json_encode() menukar nilai PHP kepada JSON rentetan.
  • Dengan menyatakan JSON_UNESCAPED_UNICODE, aksara Unicode dipelihara tanpa melarikan diri, memastikan aksara khas dihantar secara utuh.

Keperluan:

  • PHP 5.2.0 atau kemudian
  • rentetan PHP dikodkan dalam UTF-8 (atau US-ASCII)

Awas:

  • Apabila menggunakan json_encode( ) dalam atribut HTML (cth., onclick), luluskan hasilnya htmlspecialchars():
htmlspecialchars(json_encode($string), ENT_QUOTES);
Salin selepas log masuk

Ini menghalang potensi isu dengan entiti HTML seperti "&bar;" disalah tafsir dalam kod JavaScript.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melewati Rentetan PHP dengan Selamat kepada Pembolehubah JavaScript, Mengendalikan Aksara Khas?. 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