php下過濾html代碼的函數(shù) 提高程序安全性
更新時間:2010年03月02日 13:32:23 作者:
用PHP過濾html里可能被利用來引入外部危險內(nèi)容的代碼。有些時候,需要讓用戶提交html內(nèi)容,以便豐富用戶發(fā)布的信息,當(dāng)然,有些可能造成顯示頁面布局混亂的代碼也在過濾范圍內(nèi)。
以下為過濾HTML代碼的函數(shù):
function ihtmlspecialchars($string) {
if(is_array($string)) {
foreach($string as $key => $val) {
$string[$key] = ihtmlspecialchars($val);
}
} else {
$string = preg_replace('/&((#(\d{3,5}|x[a-fA-F0-9]{4})|[a-zA-Z][a-z0-9]{2,5});)/', '&\\1',
str_replace(array('&', '"', '<', '>'), array('&', '"', '<', '>'), $string));
}
return $string;
}
php下過濾HTML代碼的函數(shù)
function htmlEncode($string) {
$string=trim($string);
$string=str_replace("&","&",$string);
$string=str_replace("'","'",$string);
$string=str_replace("&","&",$string);
$string=str_replace(""",""",$string);
$string=str_replace("\"",""",$string);
$string=str_replace("<","<",$string);
$string=str_replace("<","<",$string);
$string=str_replace(">",">",$string);
$string=str_replace(">",">",$string);
$string=str_replace(" "," ",$string);
$string=nl2br($string);
return $string;
}
復(fù)制代碼 代碼如下:
function ihtmlspecialchars($string) {
if(is_array($string)) {
foreach($string as $key => $val) {
$string[$key] = ihtmlspecialchars($val);
}
} else {
$string = preg_replace('/&((#(\d{3,5}|x[a-fA-F0-9]{4})|[a-zA-Z][a-z0-9]{2,5});)/', '&\\1',
str_replace(array('&', '"', '<', '>'), array('&', '"', '<', '>'), $string));
}
return $string;
}
php下過濾HTML代碼的函數(shù)
復(fù)制代碼 代碼如下:
function htmlEncode($string) {
$string=trim($string);
$string=str_replace("&","&",$string);
$string=str_replace("'","'",$string);
$string=str_replace("&","&",$string);
$string=str_replace(""",""",$string);
$string=str_replace("\"",""",$string);
$string=str_replace("<","<",$string);
$string=str_replace("<","<",$string);
$string=str_replace(">",">",$string);
$string=str_replace(">",">",$string);
$string=str_replace(" "," ",$string);
$string=nl2br($string);
return $string;
}
相關(guān)文章
linux使用crontab實現(xiàn)PHP執(zhí)行計劃定時任務(wù)
前幾天寫過一篇文章,利用單純的php實現(xiàn)定時執(zhí)行任務(wù),但是效率不佳,對于linux來說用crontab實現(xiàn)更加合理2014-05-05
PHPStudy下載PHP提示“當(dāng)前網(wǎng)絡(luò)不穩(wěn)定,下載失敗”的解決辦法
這篇文章主要介紹了PHPStudy下載PHP提示“當(dāng)前網(wǎng)絡(luò)不穩(wěn)定,下載失敗”的解決辦法,文中通過圖文結(jié)合的方式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2024-08-08
php中print(),print_r(),echo()的區(qū)別詳解
本文介紹了php函數(shù)print(),print_r(),echo()的區(qū)別,這里推薦給大家,需要的朋友可以參考下2014-12-12
動易數(shù)據(jù)轉(zhuǎn)成dedecms的php程序
動易數(shù)據(jù)轉(zhuǎn)成dedecms的php程序...2007-04-04
一家之言的經(jīng)驗之談php+mysql扎實個人基本功
在學(xué)習(xí)php的過程中,我們開始就需要注意的問題2008-03-03
屏蔽PHP默認(rèn)設(shè)置中的Notice警告的方法
很多時候其實寫出來的代碼的錯誤可以忽略或者根本就不是錯誤,PHP還是會顯示Notice警告,well接下來我們就來介紹一下屏蔽PHP默認(rèn)設(shè)置中的Notice警告的方法2016-05-05
Zend Studio (eclipse)使用速度優(yōu)化方法
Zend studio7.12那速度正太讓人火大了,修改文件的保存就building workspace,要得等上好一會2011-03-03

