PHP htmlspecialchars 函數的語法
string htmlspecialchars( $string , $quote_flags , $encoding , $double_encode )
PHP htmlspecialchars 函數有四個可以使用的參數,第一個參數 $string 是原始字串,必填,第二個參數 $quote_flags 是選用項目,功能是用來設定對引號的轉換,以下是可用的設定方式。- ENT_COMPAT:預設,只轉換雙引號,不轉換單引號。
- ENT_QUOTES:雙引號與單引號都要轉換。
- ENT_NOQUOTES:單引號與雙引號都不轉換。
最後一個參數 $double_encode 也是選用項目,預設值是轉換全部的 HTML 碼。
PHP htmlspecialchars 函數的應用範例
<?php
echo '<a href=\"#\">Test Link</a>';
echo '<br>';
$MyString=htmlspecialchars("<a href=\"#\">Test Link</a>",ENT_QUOTES);
echo $MyString;
?>
範例的輸出結果echo '<a href=\"#\">Test Link</a>';
echo '<br>';
$MyString=htmlspecialchars("<a href=\"#\">Test Link</a>",ENT_QUOTES);
echo $MyString;
?>
Test Link
<a href="#">Test Link</a>
我們在範例的一開始就用 echo 輸出了一段 HTML 的程式碼,這段程式碼的意思是一個超連結,在沒有使用 htmlspecialchars 函數轉換的情況下,HTML 超連結直接作用了,也就是產生一個 HTML 超連結,接著我們利用 htmlspecialchars 函數將超連結的 HTML 符號轉換成僅能閱讀的符號,從範例的輸出結果就能發現,輸出了一串 HTML 碼,而不是一個能用的超連結,這就代表轉換成功了,我們利用瀏覽器的檢視原始碼功能,可以看到以下這樣的內容:<a href="#">Test Link</a>
<a href=\"#\">Test Link</a><br><a href="#">Test Link</a>
在 <br> 的左邊是原本的 HTML 超連結程式碼,右邊則是經過 htmlspecialchars 函數轉換的結果,透過這樣的方式幫我們過濾表單來的資料相當有用,轉換效率也相當不錯,以上就是 PHP htmlspecialchars 函數的基本功能操作。延伸閱讀