平面设计师长逛的网站有哪些百度推广费
THINKPHP成功6秒跳转
http://www.thinkphp.cn/topic/4981.html
$this->assign("waitSecond","6");
input type=button value=刷新
οnclick="location.reload()">
实现字符串部分字符用*代替的功能
在很多安全性较高的网站中,经常会看到银行账号只显示前几位和后几位,中
间的都用*代替了,有些邮箱也有几个字符被*代替,有些用户账号、密码等字
符串中也出现了用*替代其中几位的,其实在我们自己做项目的时候也会经常用
到这种做法,实现起来很简单,但是每次都要写一遍也麻烦,于是我写了个函
数调用即可。
支持的功能:
1、支持字符串从指定位置从左向右隐藏连续N个字符
2、支持字符串从指定位置从右向左隐藏连续N个字符
3、支持字符串指定字符前面从右向左隐藏连续N个字符,用于隐藏邮箱等
4、支持字符串指定字符后面面从左向右隐藏连续N个字符,用于隐藏邮箱等
5、支持只保留字符串首末指定长度外的字符串外的字符隐藏
6、支持中英文字符串
代码:
function hideStr($string, $bengin=0, $len = 4,
$type = 0, $glue =
"@") {
if
(empty($string))
return false;
$array =
array();
if ($type ==
0 || $type == 1 || $type == 4) {
$strlen = $length = mb_strlen($string);
while ($strlen) {
$array[] = mb_substr($string, 0, 1, "utf8");
$string = mb_substr($string, 1, $strlen, "utf8");
$strlen = mb_strlen($string);
}
}
if ($type ==
0) {
for ($i = $bengin; $i < ($bengin + $len); $i++) {
if (isset($array[$i]))
$array[$i] = "*";
}
$string = implode("", $array);
}else if
($type == 1) {
$array = array_reverse($array);
for ($i = $bengin; $i < ($bengin + $len); $i++) {
if (isset($array[$i]))
$array[$i] = "*";
}
$string = implode("", array_reverse($array));
}else if
($type == 2) {
$array = explode($glue, $string);
$array[0] = hideStr($array[0], $bengin, $len, 1);
$string = implode($glue, $array);
} else if
($type == 3) {
$array = explode($glue, $string);
$array[1] = hideStr($array[1], $bengin, $len, 0);
$string = implode($glue, $array);
} else if
($type == 4) {
$left = $bengin;
$right = $len;