Escape HTML Tidak Dijangka dalam Templat
Dalam senario templat tertentu, pembangun mungkin menghadapi isu di mana < watak sedang dilarikan secara tidak wajar ke <, manakala > watak tetap tidak disentuh. Tingkah laku ini boleh membingungkan, terutamanya apabila cuba memasukkan nilai seperti
Penjelasan
Punca pelarian ini terletak pada perpustakaan asas yang digunakan untuk pemprosesan templat. html/template direka untuk menjana output HTML dan menyediakan pelarian automatik untuk potensi kelemahan suntikan kod. Ia mentafsir < dan > sebagai entiti HTML untuk menghalang kod hasad daripada dilaksanakan.
Malangnya, pelarian ini adalah khusus konteks dan hanya digunakan pada konteks HTML. Memandangkan templat yang disediakan tidak bertujuan untuk menjana HTML, proses melarikan diri tidak sepatutnya berlaku.
Penyelesaian
Untuk menyelesaikan isu ini, pertimbangkan untuk menggunakan teks/templat dan bukannya html /template untuk menjana fail seperti readmes dan lesen. teks/templat tidak melakukan pelarian khusus HTML, membenarkan aksara seperti < untuk kekal dalam bentuk asalnya. Dengan beralih kepada pustaka ini, output dijangka
Atas ialah kandungan terperinci Mengapakah < Melarikan diri ke < dalam Templat Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!