"; } public static function getTokenValue(){ return encrypt(TIMESTAMP,md5(MD5_KEY)); } /** * 判断令牌是否正确 * * @param * @return bool 布尔类型的返回结果 */ public static function checkToken(){ $data = decrypt($_POST['formhash'],md5(MD5_KEY)); return $data && (TIMESTAMP - $data < 5400); } /** * 将字符 & " < > 替换 * * @param unknown_type $string * @return unknown */ public static function fliterHtmlSpecialChars($string) { $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; } /** * 参数过滤 * * @param array 参数内容 * @param array $ignore 被忽略过滤的元素 * @return array 数组形式的返回结果 * */ public static function getAddslashesForInput($array,$ignore=array()){ if (!function_exists('htmlawed')) require(BASE_CORE_PATH.'/framework/function/htmlawed.php'); if (!empty($array)){ while (list($k,$v) = each($array)) { if (is_string($v)) { if (get_magic_quotes_gpc()) { $v = stripslashes($v); } if($k != 'statistics_code') { if (!in_array($k,$ignore)){ //如果不是编辑器,则转义< > & " $v = self::fliterHtmlSpecialChars($v); } else { $v = htmlawed($v,array('safe'=>1)); } if($k == 'ref_url') { $v = str_replace('&','&',$v); } } $array[$k] = addslashes(trim($v)); } else if (is_array($v)) { if($k == 'statistics_code') { $array[$k] = $v; } else { $array[$k] = self::getAddslashesForInput($v); } } } return $array; }else { return false; } } public static function getAddSlashes($array){ if (!empty($array)){ while (list($k,$v) = each($array)) { if (is_string($v)) { if (!get_magic_quotes_gpc()) { $v = addslashes($v); } } else if (is_array($v)) { $array[$k] = self::getAddSlashes($v); } } return $array; }else { return false; } } }