Sep
26
2024
php处理提交字符串的函数,php处理http传入的参数,php处理接收的参数,彻底杜绝各种攻击
作者:
绝缘体.. 发布:
2024-09-26 14:50 分类:
未分类 阅读:
抢沙发
php处理提交字符串的函数,彻底杜绝各种攻击。
/**
* 字符串处理,主要处理html字符
* @param string $str
* @param bool $flip 处理http提交参数使用false,从数据库读出来展示到页面使用true
* @return string
*/
function doStr($str, $flip = false): string {
if (!$str) {
return $str;
}
if ($flip) { // 从数据库读出来显示到页面上
$str = htmlspecialchars_decode($str, ENT_QUOTES | ENT_HTML5);
$str = stripslashes($str);
} else { // 提交数据保存到数据库的时候
$str = addslashes($str);
$str = htmlspecialchars($str, ENT_QUOTES | ENT_HTML5, 'UTF-8');
}
return $str;
}
以下是老版本代码。
/**
* 字符串处理,主要处理html字符
* @param string $str
* @param bool $flip 处理http提交参数使用false,从数据库读出来展示到页面使用true
* @return string
*/
function doStr($str, $flip = false) {
if (!$str) {
return $str;
}
if ($flip) {//当从数据库读出来显示到页面上的时候
$str = htmlspecialchars_decode($str);
if (version_compare(PHP_VERSION, '7.2.34', '<')) {
!get_magic_quotes_gpc() && $str = stripslashes($str);
} else {
$str = stripslashes($str);
}
} else {//提交数据保存到数据库的时候
if (version_compare(PHP_VERSION, '7.2.34', '<')) {
!get_magic_quotes_gpc() && $str = addslashes($str);
} else {
$str = addslashes($str);
}
$str = htmlspecialchars($str);
}
return $str;
}
微信扫一扫,打赏作者吧~