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

· 19년 전 · 2693
원문 : 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,677
19년 전 조회 2,853
19년 전 조회 3,580
19년 전 조회 3,599
19년 전 조회 3,301
19년 전 조회 5,582
19년 전 조회 2,325
19년 전 조회 2,366
19년 전 조회 2,472
19년 전 조회 3,543
19년 전 조회 3,866
19년 전 조회 3,889
19년 전 조회 2,500
19년 전 조회 2,538
19년 전 조회 2,832
19년 전 조회 3,158
19년 전 조회 2,593
19년 전 조회 2,764
19년 전 조회 2,612
19년 전 조회 2,350
19년 전 조회 3,371
19년 전 조회 3,446
19년 전 조회 3,164
19년 전 조회 5,002
19년 전 조회 2,837
19년 전 조회 3,455
19년 전 조회 3,281
19년 전 조회 2,148
19년 전 조회 3,275
19년 전 조회 2,011
19년 전 조회 2,469
19년 전 조회 2,555
19년 전 조회 4,125
19년 전 조회 3,315
19년 전 조회 3,236
19년 전 조회 2,682
19년 전 조회 2,147
19년 전 조회 1,788
19년 전 조회 2,565
19년 전 조회 2,477
19년 전 조회 1,949
19년 전 조회 1,961
19년 전 조회 2,742
19년 전 조회 2,708
19년 전 조회 2,025
19년 전 조회 2,252
19년 전 조회 3,435
19년 전 조회 2,085
19년 전 조회 2,615
19년 전 조회 2,694
19년 전 조회 2,808
19년 전 조회 3,070
19년 전 조회 2,710
19년 전 조회 3,118
19년 전 조회 2,890
19년 전 조회 3,653
19년 전 조회 2,013
19년 전 조회 2,860
19년 전 조회 2,520
19년 전 조회 2,153
19년 전 조회 2,572
19년 전 조회 1,999
19년 전 조회 5,561
19년 전 조회 2,407
19년 전 조회 4,372
19년 전 조회 2,439
19년 전 조회 1,997
19년 전 조회 2,726
19년 전 조회 2,471
19년 전 조회 2,659
19년 전 조회 2,312
19년 전 조회 4,062
19년 전 조회 3,540
19년 전 조회 2,327
19년 전 조회 2,256
19년 전 조회 2,117
19년 전 조회 2,127
19년 전 조회 4,511
19년 전 조회 3,480
19년 전 조회 2,909
19년 전 조회 3,488
19년 전 조회 3,124
19년 전 조회 2,977
19년 전 조회 2,480
19년 전 조회 2,293
19년 전 조회 2,622
19년 전 조회 3,231
19년 전 조회 2,250
19년 전 조회 3,243
19년 전 조회 3,383
19년 전 조회 3,047
19년 전 조회 2,068
19년 전 조회 1,821
19년 전 조회 2,459
19년 전 조회 2,378
19년 전 조회 1,736
19년 전 조회 1,785
19년 전 조회 1,691
19년 전 조회 2,184
19년 전 조회 1,761