Bagaimana untuk Memaparkan Baris Baharu dengan Betul dalam Templat HTML?

Susan Sarandon
Lepaskan: 2024-10-31 12:38:01
asal
866 orang telah melayarinya

How to Display Newlines Correctly in HTML Templates?

Memaparkan Baris Baharu dengan Betul dalam Templat HTML

Apabila memuatkan fail teks dengan baris baharu ke dalam templat HTML, pembangun sering menghadapi masalah apabila baris baharu ini terlepas kepada "
" bukannya dipaparkan sebagai pemisah baris. Ini boleh menjadi masalah untuk mengekalkan pemformatan dan kebolehbacaan yang betul.

Untuk menangani cabaran ini, anda boleh membersihkan teks anda terlebih dahulu menggunakan templat.HTMLEscape() untuk mengalih keluar sebarang kemungkinan kelemahan XSS. Selepas itu, anda boleh menggantikan baris baharu ("n") dengan "
" menggunakan rentetan.Ganti(). Teks yang diubah suai kemudiannya hendaklah dirangkumkan dalam templat.HTML() untuk menandakannya sebagai serpihan HTML yang dipercayai dan selamat.

Contoh pelaksanaan dalam Go menunjukkan pendekatan ini:

<code class="go">package main

import (
    "html/template"
    "os"
    "strings"
)

const page = `<!DOCTYPE html>
<html>
  <head>
  </head>
  <body>
    <p>{{.}}</p>
  </body>
</html>`

const text = `first line
<script>dangerous</script>
last line`

func main() {
    t := template.Must(template.New("page").Parse(page))
    safe := template.HTMLEscapeString(text)
    safe = strings.Replace(safe, "\n", "<br>", -1)
    t.Execute(os.Stdout, template.HTML(safe)) // template.HTML encapsulates a known safe HTML document fragment.
}</code>
Salin selepas log masuk

Pendekatan ini memastikan bahawa baris baharu dipaparkan dengan betul sebagai pemisah baris dalam penyemak imbas, sambil mengekalkan integriti kandungan HTML yang diberikan.

Atas ialah kandungan terperinci Bagaimana untuk Memaparkan Baris Baharu dengan Betul dalam Templat HTML?. 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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!