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

· 10년 전 · 2202

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ㄴ안아


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

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

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

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

개발자팁

개발과 관련된 유용한 정보를 공유하세요. 질문은 QA에서 해주시기 바랍니다.

+
분류 제목 글쓴이 날짜 조회
PHP 10년 전 조회 2,480
PHP 10년 전 조회 2,700
PHP 10년 전 조회 2,628
PHP 10년 전 조회 2,696
PHP 10년 전 조회 2,065
PHP 10년 전 조회 2,433
PHP 10년 전 조회 2,247
PHP 10년 전 조회 2,733
PHP 10년 전 조회 2,861
PHP 10년 전 조회 3,158
PHP 10년 전 조회 2,795
PHP 10년 전 조회 1.2만
PHP 10년 전 조회 2,789
PHP 10년 전 조회 2,407
PHP 10년 전 조회 2,203
PHP 10년 전 조회 2,580
PHP 10년 전 조회 3,599
PHP 10년 전 조회 2,394
PHP 10년 전 조회 1,864
PHP 10년 전 조회 3,146
정규표현식 10년 전 조회 7,734
웹서버 10년 전 조회 2,658
jQuery 10년 전 조회 3,388
jQuery 10년 전 조회 2,929
PHP 10년 전 조회 2,791
PHP 10년 전 조회 2,266
PHP 10년 전 조회 3,487
JavaScript 10년 전 조회 3,974
PHP 10년 전 조회 8,750
PHP 10년 전 조회 2,414
🐛 버그신고