입력내용중의 일부만 보여주고 x 표시 할때

· 19년 전 · 2572
원문 : http://www.phpschool.com/gnuboard4/bbs/board.php?bo_table=tipntech&wr_id=48575&page=



function strHideWord($str,$extent=null,$color="",$pos=0) {
$str_len = strlen($str);
$str_key = array();
$seq = 0;
for($i=0;$i<$str_len;$i++) {
if(ord($str[$i]) > 128) {
$seq++;
if($seq%2==0)
$str_key[]=$i+1;
} else {
$str_key[]=$i+1;
}
}
$array_cnt = count($str_key);

if($extent === null)
$extent = intval($array_cnt/2);
elseif($extent && $extent > $array_cnt)
return $str;

if($extent && $pos==0)
$rtn = substr($str,0,$str_key[$extent-1]);
elseif($extent && $pos==1)
$rtn = substr($str,$str_key[$array_cnt - $extent-1],$str_len);

for($i=$extent;$i<$array_cnt;$i++) {
$ertn .= "X";
}

if($color)
$ertn = "<font color='".$color."'>".$ertn."</font>";

if($pos)
return $ertn.$rtn;
else
return $rtn.$ertn;
}

strHideWord(문자열,보여줄길이,마킹색상,마킹위치);

보여줄길이 null -> 문자열 절반만 마킹
보여줄길이 0 -> 전체 문자열 마킹

마킹위치 -> 0 왼쪽 글자보여줌
마킹위치 -> 1 오른쪽 글자만 보여줌

echo strHideWord('가1나다라마마1212ㄴ안아',3,'red',0);
-> 가1나XXXXXXXXXXX

echo strHideWord('가1나다라마마1212ㄴ안아',3,'red',1);
-> XXXXXXXXXXXㄴ안아


올리는 김에 허접한거 하나 더 올리지요.

언제 만들었는지는 기억이 가물가물 한데

로그인 안한 사람들에게 정보를 쬐끔만 보여주게 할려고 만들었을 겁니다.

2바이트,1바이트 관계없이 글자갯수(X 합쳐)가 똑같아야 된다는거 ㅡㅡ; 결벽증이...<div class='small'>[이 게시물은 관리자님에 의해 2011-10-31 17:12:10 PHP & HTML에서 이동 됨]</div>
|
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

+
제목 글쓴이 날짜 조회
19년 전 조회 3,547
19년 전 조회 2,702
19년 전 조회 3,448
19년 전 조회 3,451
19년 전 조회 3,151
19년 전 조회 5,439
19년 전 조회 2,170
19년 전 조회 2,221
19년 전 조회 2,316
19년 전 조회 3,394
19년 전 조회 3,704
19년 전 조회 3,749
19년 전 조회 2,354
19년 전 조회 2,396
19년 전 조회 2,692
19년 전 조회 3,041
19년 전 조회 2,462
19년 전 조회 2,628
19년 전 조회 2,450
19년 전 조회 2,210
19년 전 조회 3,233
19년 전 조회 3,294
19년 전 조회 3,030
19년 전 조회 4,865
19년 전 조회 2,695
19년 전 조회 3,308
19년 전 조회 3,137
19년 전 조회 1,989
19년 전 조회 3,128
19년 전 조회 1,871
19년 전 조회 2,337
19년 전 조회 2,409
19년 전 조회 3,988
19년 전 조회 3,175
19년 전 조회 3,102
19년 전 조회 2,541
19년 전 조회 2,000
19년 전 조회 1,646
19년 전 조회 2,417
19년 전 조회 2,334
19년 전 조회 1,824
19년 전 조회 1,820
19년 전 조회 2,609
19년 전 조회 2,581
19년 전 조회 1,885
19년 전 조회 2,114
19년 전 조회 3,301
19년 전 조회 1,955
19년 전 조회 2,497
19년 전 조회 2,573
19년 전 조회 2,666
19년 전 조회 2,943
19년 전 조회 2,567
19년 전 조회 2,980
19년 전 조회 2,763
19년 전 조회 3,516
19년 전 조회 1,875
19년 전 조회 2,736
19년 전 조회 2,376
19년 전 조회 2,025
19년 전 조회 2,430
19년 전 조회 1,879
19년 전 조회 5,444
19년 전 조회 2,265
19년 전 조회 4,247
19년 전 조회 2,304
19년 전 조회 1,854
19년 전 조회 2,596
19년 전 조회 2,336
19년 전 조회 2,532
19년 전 조회 2,174
19년 전 조회 3,917
19년 전 조회 3,420
19년 전 조회 2,203
19년 전 조회 2,112
19년 전 조회 1,982
19년 전 조회 2,000
19년 전 조회 4,381
19년 전 조회 3,358
19년 전 조회 2,780
19년 전 조회 3,358
19년 전 조회 3,004
19년 전 조회 2,845
19년 전 조회 2,347
19년 전 조회 2,166
19년 전 조회 2,494
19년 전 조회 3,104
19년 전 조회 2,130
19년 전 조회 3,122
19년 전 조회 3,253
19년 전 조회 2,924
19년 전 조회 1,944
19년 전 조회 1,707
19년 전 조회 2,324
19년 전 조회 2,257
19년 전 조회 1,631
19년 전 조회 1,663
19년 전 조회 1,566
19년 전 조회 2,079
19년 전 조회 1,628