展会信息港展会大全

PHP 安全检测代码片段(分享)
来源:互联网   发布日期:2016-03-02 15:18:34   浏览:1905次  

导读:本篇文章是对PHP安全检测代码的片段进行了详细的分析介绍,需要的朋友参考下复制代码 代码如下:/** * html转换输出(只转义...

本篇文章是对PHP安全检测代码的片段进行了详细的分析介绍,需要的朋友参考下

复制代码 代码如下:

/**

* html转换输出(只转义' " 保留Html正常运行)* @param $param

* @return string

*/

function htmlEscape($param) {

return trim(htmlspecialchars($param, ENT_QUOTES));

}

/**

* 是否数组(同时检测数组中是否存在值)* @param $params

* @return boolean

*/

function isArray($params) {

return (!is_array($params) || !count($params)) ? false : true;

}

/**

* 变量是否在数组中存在(参数容错, 字符串是否存在于数组中)* @param $param

* @param $params

* @return boolean

*/

function inArray($param, $params) {

return (!in_array((string)$param, (array)$params)) ? false : true;

}

/**

* 通用多类型混合转义函数* @param $var

* @param $strip

* @param $isArray

* @return mixture

*/

function sqlEscape($var, $strip = true, $isArray = false) {

if (is_array($var)) {

if (!$isArray) return " '' ";

foreach ($var as $key => $value) {

$var[$key] = trim(S::sqlEscape($value, $strip));

}

return $var;

} elseif (is_numeric($var)) {

return " '" . $var . "' ";

} else {

return " '" . addslashes($strip ? stripslashes($var) : $var) . "' ";

}

}

/**

* 获取服务器变量* @param $keys

* @return string

*/

function getServer($keys) {

$server = array();

$array = (array) $keys;

foreach ($array as $key) {

$server[$key] = NULL;

if (isset($_SERVER[$key])) {

$server[$key] =str_replace(array('<','>','"',"'",'%3C','%3E','%22','%27','%3c','%3e'),'', $_SERVER[$key]);

}

}

return is_array($keys) ? $server : $server[$keys];

}

/**

* 变量转义* @param $array

*/

function slashes(&$array) {

if (is_array($array)) {

foreach ($array as $key => $value) {

if (is_array($value)) {

S::slashes($array[$key]);

} else {

$array[$key] = addslashes($value);

}

}

}

}

/**

* 目录转换* @param unknown_type $dir

* @return string

*/

function escapeDir($dir) {

$dir = str_replace(array("'",'#','=','`','$','%','&',';'), '', $dir);

return rtrim(preg_replace('/(/){2,}|(){1,}/', '/', $dir), '/');

}

/**

* 通用多类型转换* @param $mixed

* @param $isint

* @param $istrim

* @return mixture

*/

function escapeChar($mixed, $isint = false, $istrim = false) {

if (is_array($mixed)) {

foreach ($mixed as $key => $value) {

$mixed[$key] = S::escapeChar($value, $isint, $istrim);

}

} elseif ($isint) {

$mixed = (int) $mixed;

} elseif (!is_numeric($mixed) && ($istrim ? $mixed = trim($mixed) : $mixed) && $mixed) {

$mixed = S::escapeStr($mixed);

}

return $mixed;

}

/**

* 字符转换* @param $string

* @return string

*/

function escapeStr($string) {

$string = str_replace(array("

赞助本站

人工智能实验室

相关热词: 开发 编程 android

AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港