簡體   English   中英

我可以讓 php 在使用時自動轉義 HTML 字符嗎<!--?= ?--> ?

[英]Can I make php automatically escape HTML chars when using <?= ?>?

我正在使用未轉義的數據,例如some string " <>> ' blah

當我這樣做時,這會導致麻煩:

<input value="<?= $my_string ?>">

結果是:

<input value="some string " <>> ' blah">

有沒有辦法告訴 php 在使用<?=?>將其打印到 html 文檔之前對所有內容調用htmlspecialchars ,這樣我就不必每次都手動調用它?

不,這是不可能的。 但是你可以做一個快捷的方法。 例如像這樣:

function h($string){
     return htmlspecialchars($string);
}

我在我的網站上所做的是,我有一個預制的 function,每當我在個人資料或任何地方呼應某些東西時,我都會調用它。

它看起來像這樣:

function text_convert($txt){
     return htmlspecialchars($txt);
}

然后我可以像這樣簡單地運行它: echo text_convert($string);

有多種處理方法,僅在 HTML 中使用單引號是最快和最臟的:

<input value='<?= $my_string ?>'>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM