Semua panduan

Mengapa teks memaparkan “&” dan cara membetulkannya

Diterbitkan pada · Dikemas kini pada 2 minit bacaan

Apabila sesuatu teks memaparkan “&” sebagai ganti “&”, entiti HTML telah dienkod sekali terlalu banyak. Alat ini mendekod satu peringkat setiap kali dan memberitahu anda apabila masih ada yang tinggal.

Apa itu entiti HTML

Entiti ialah urutan tanda yang mewakili aksara yang dikhaskan untuk kod halaman. Lima yang lazim.

AksaraEntiti
&&
<&lt;
>&gt;
"&quot;
' (apostrof lurus)&#039;

Dari mana enkod berganda datang

Sesuatu teks kadangkala melalui dua sistem yang masing-masing mengenkod: penyunting, kemudian templat halaman. Setiap lintasan mengubah “&” daripada entiti sebelumnya. Dengan Enkod/dekod entiti HTML, mengenkod “Tom & Jerry” menghasilkan “Tom &amp; Jerry”, kemudian mengenkod hasil itu menghasilkan “Tom &amp;amp; Jerry”.

LangkahTeks hasil
Teks asalTom & Jerry
Dienkod sekaliTom &amp; Jerry
Dienkod dua kaliTom &amp;amp; Jerry

Pelayar mendekod satu peringkat semasa memaparkan. Teks yang dienkod dua kali oleh itu dipaparkan dengan “&amp;” sebagai ganti “&”.

Mendekod satu peringkat setiap kali

Alat ini membuang satu peringkat entiti pada setiap lintasan. Jika hasilnya masih mengandungi entiti, mod “Kedua-duanya” menandainya dan anda menjalankan dekod semula pada hasilnya.

TeksDekod pertamaDekod kedua
Tom &amp;amp; JerryTom &amp; JerryTom & Jerry
&amp;lt;b&amp;gt;gras&amp;lt;/b&amp;gt;&lt;b&gt;gras&lt;/b&gt;<b>gras</b>

Mendekod satu peringkat sahaja mengelakkan pembatalan enkod yang disengajakan: contoh kod yang perlu memaparkan “&amp;” pada skrin ditulis “&amp;amp;” dalam halaman.

Aksen dan simbol

Dekod memahami semua entiti bernama yang berakhir dengan koma bertitik, bukan hanya lima yang biasa. “caf&eacute; &agrave; 5&nbsp;&euro; &copy; 2026” menghasilkan “café à 5 € © 2026”, dengan ruang tanpa putus menjadi ruang tanpa putus yang sebenar.

Entiti berangka

Entiti berangka turut didekod: “&#233;t&#xE9;” menghasilkan “été”, dan “&#x1F600;” seperti “&#128512;” menghasilkan emoji yang sama.

Apa yang dibiarkan utuh oleh alat

  • Entiti yang tidak dikenali seperti “&inconnue;” dibiarkan seadanya.
  • Entiti tanpa koma bertitik di hujung, seperti “&amp” atau “&lt” dalam ayat, tidak disentuh.
  • Alamat dengan parameter, seperti “https://exemple.fr/?a=1&param=2&copy=4”, kekal tepat: “&param” dan “&copy” tidak dianggap entiti di situ.

Mengenkod kod untuk dipaparkan

Untuk memaparkan petikan kod dalam halaman, enkod sekali sahaja. Teks “<a href="x">l’été & plus</a>” menghasilkan “&lt;a href=&quot;x&quot;&gt;l&#039;été &amp; plus&lt;/a&gt;”. Huruf berbaris tidak dienkod, hanya lima aksara terpelihara.

Mengelakkan masalah

Enkod sekali sahaja, pada saat terakhir, semasa menulis ke dalam halaman. Untuk menggantikan secara pukal sisa enkod yang salah, Cari dan ganti dalam teks sesuai digunakan. Alamat web mengikut enkod lain, diterangkan dalam Jangan keliru antara Base64, hash dan alamat yang dienkod.

Semak hasilnya

  1. Jalankan dekod semula selagi alat masih melaporkan entiti yang tinggal.
  2. Bandingkan dengan teks asal pada skrin.
  3. Semak ruang tanpa putus dan emoji.

Enkod/dekod entiti HTML