2017-11-06 15:04:21 1842瀏覽
目前隨著互聯(lián)網(wǎng)的發(fā)展呈大好的趨勢(shì)下,幾乎所有的互聯(lián)網(wǎng)公司,都在使用PHP做網(wǎng)站開(kāi)發(fā)。因此各大企業(yè)開(kāi)始尋求高端的PHP開(kāi)發(fā)工程師足以說(shuō)明PHP在未來(lái)的幾年具有廣闊的發(fā)展前景,PHP憑借周期短,免費(fèi)、穩(wěn)定、安全和跨平臺(tái)等特點(diǎn),不僅入選為五大最受歡迎的編程語(yǔ)言之一,也成為了企業(yè)網(wǎng)站開(kāi)發(fā)最常用的編程語(yǔ)言。那么下面我們來(lái)對(duì)于零基礎(chǔ)學(xué)員學(xué)習(xí)php中處理HTML特殊字符轉(zhuǎn)換的常用方法吧。
HTML實(shí)體字符
我們知道HTML中有許多特殊的預(yù)留字符不能直接輸出到瀏覽器,必須把它們替換為相應(yīng)的實(shí)體字符才可以正常顯示,比如空格、<、>等。
HTML常用字符實(shí)體一覽:
我們?cè)趯?xiě)HTML代碼時(shí),可以直接在代碼中將想顯示的特殊字符寫(xiě)成實(shí)體字符:
<html><head><metacharset="utf-8"></head><body><h3>HTML中超鏈接a標(biāo)簽是這個(gè)樣子的:</h3><p><a href='http://m.dionly.net.cn'>扣丁學(xué)堂</a></p></body></html>
htmlentities()
在寫(xiě)PHP代碼時(shí),不能在字符串中直接寫(xiě)實(shí)體字符,PHP提供了一個(gè)將HTML特殊字符轉(zhuǎn)換成實(shí)體字符的函數(shù) htmlentities()。
注:htmlentities()并不能轉(zhuǎn)換所有的特殊字符,是轉(zhuǎn)換除了空格之外的特殊字符,且單引號(hào)和雙引號(hào)需要單獨(dú)控制(通過(guò)第二個(gè)參數(shù))。
第二個(gè)參數(shù)有三個(gè)值:
ENT_COMPAT(默認(rèn)值):只轉(zhuǎn)換雙引號(hào)。
ENT_QUOTES:兩種引號(hào)都轉(zhuǎn)換。
ENT_NOQUOTES:兩種引號(hào)都不轉(zhuǎn)換。
(沒(méi)有只轉(zhuǎn)換單引號(hào)的參數(shù)選項(xiàng))
<?php$str="<a href='http://m.dionly.net.cn/'>扣丁學(xué)堂©</a>";//使用htmlentities()函數(shù)將特殊字符轉(zhuǎn)換為實(shí)體字符$str2= htmlentities($str);echo$str2;?>
運(yùn)行后前臺(tái)顯示特殊字符正常,右擊查看頁(yè)面源代碼,可以看到PHP轉(zhuǎn)換后的實(shí)體字符內(nèi)容。
htmlspecialchars()
htmlspecialchars()函數(shù)只對(duì)HTML語(yǔ)法字符進(jìn)行轉(zhuǎn)換,目的是避免這些特殊的字符擾亂HTML代碼。
這里說(shuō)的 HTML語(yǔ)法字符 只有5個(gè):
顯示結(jié)果 | 描述 | 實(shí)體名稱(chēng) |
---|---|---|
< | 小于號(hào) | < |
> | 大于號(hào) | > |
& | 和號(hào) | & |
" | 雙引號(hào) | " |
' | 單引號(hào) | ' |
htmlspecialchars()將其轉(zhuǎn)換成與其對(duì)應(yīng)的實(shí)體字符。
我們還是以上面代碼為例,對(duì)比htmlentities和htmlspecialchars查看下效果:
<?php> $str="<a href='http://m.dionly.net.cn'>扣丁學(xué)堂©</a>"; //使用htmlspecialchars()函數(shù)將特殊字符轉(zhuǎn)換為實(shí)體字符 $str2= htmlspecialchars($str); echo$str2; ?>
可以看到,htmlspecialchars只對(duì)上面5個(gè)特殊語(yǔ)法字符其作用,其他的特殊字符不進(jìn)行轉(zhuǎn)換。
以上就是關(guān)于PHP中處理HTML特殊字符轉(zhuǎn)換的方法詳細(xì)介紹,對(duì)比htmlentities和htmlspecialchars兩個(gè)PHP函數(shù)的功能作用。如果大家對(duì)于字符處理還有其他疑問(wèn),歡迎和大家一起在扣丁學(xué)堂官網(wǎng)進(jìn)行分享和交流,最后想要了解更多請(qǐng)關(guān)注扣丁學(xué)堂php培訓(xùn)官網(wǎng),另有專(zhuān)業(yè)php講師和和不斷創(chuàng)新的php課程體系定會(huì)讓你學(xué)有所成,助你實(shí)現(xiàn)高薪夢(mèng)想,最好關(guān)注扣丁學(xué)堂的官網(wǎng),大量的php視頻教程供學(xué)員觀看學(xué)習(xí),喜歡就快行動(dòng)吧。
查看更多關(guān)于“php培訓(xùn)資訊”的相關(guān)文章>>