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

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

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

댓글 작성

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

로그인하기

게시글 목록

번호 제목
2774
2770
2768
2762
2760
2757
2756
2755
2754
2753
2752
2750
2749
2745
2742
2739
2738
2737
2736
2734
2732
2728
2727
2726
2723
2722
2721
2718
2717
2715