테스트 사이트 - 개발 중인 베타 버전입니다

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

· 19년 전 · 2551
원문 : 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>

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

게시글 목록

번호 제목
315
311
12040
20370
20365
12039
20364
12037
12035
12032
12031
20362
12024
12022
303
12020
12015
12010
12009
12007
12005
12004
20361
12002
11997