제목길이마다 보이는 별표 *

제목길이마다 보이는 별표 *

QA

제목길이마다 보이는 별표 *

본문

안녕하세요 고수님들 궁금한점이 있어서 질문 드립니다 ㅠㅠ

 

아래 소스로 넣게되면  제목의 길이가 길어 앞에만 확인이 가능해서 뒤에까지 확인이 어려운데 

 

글자수가 8글자 이상이면 보이는 글자가 3개가 아닌 5개로 보이게끔 하려면 어떻게 처리해야할까요? ㅠㅠ

 

아시는분은 알려주시면 감사하겠습니다 좋은 하루 보내세요 ! 

 

1794621489_1630992670.7873.png

 


        for ($i=0; $i<count($list); $i++) {
          if (!$is_admin && $list[$i]['wr_subject'] != 'admin') {
              $list[$i]['wr_subject'] = preg_replace('/(?<=.{3})./u','*',$list[$i]['wr_subject']);
          }

 

 

 

이 질문에 댓글 쓰기 :

답변 4

function mytory_asterisk($string) { 

    $string = trim($string); 

    $length = mb_strlen($string, 'utf-8');  //글자를 숫자로

    $string_changed = $string; 

    if ($length <= 2) {   //글이 2개일때는 하나만 *

        // 한두 글자면 그냥 뒤에 별표 붙여서 내보낸다. 

        $string_changed = mb_substr($string, 0, 1, 'utf-8') . '*'; 

    }else if($legnth >= 8){ //글이 8개 크거나 같을때 5개 *

        $string_changed = preg_replace('/(?<=.{5})./u','*',$length);  <-요거 변수는 알아서...

    }else if ($length < 8) {  //글이 8개 미만일때는 3개 *

        $string_changed = preg_replace('/(?<=.{3})./u','*',$length);  <-요거 변수는 알아서...

    }

    return $string_changed; 

}

 

정규식은 어려워성 맞나모르겠지만은!

preg_replace 안에 숫자 3만 5로 바꾸면 되는거 아닌가요..?;;

안녕하세요 jayz님

숫자만 5로 바꾸면 길이가 짧은것은 제목이 모두 노출되어서 ㅠㅠ

길이가 긴거만 조금 더 보이게끔 하고 싶습니다.

방법아신다면 알려주시면 감사하겠습니다..

좋은 하루 보내세요~

for ($i=0; $i<count($list); $i++) {
   if (!$is_admin && $list[$i]['wr_subject'] != 'admin') {
      $list[$i]['wr_subject'] = preg_replace('/(?<=.{3})./u','*',$list[$i]['wr_subject']);
      $변수 = mytory_asterisk($list[$i]['wr_subject']);
   }

}


function mytory_asterisk($string) { 

    $string = trim($string); 

    $length = mb_strlen($string, 'utf-8');  //글자를 숫자로

    $string_changed = $string; 

    if ($length <= 2) {   //글이 2개일때는 하나만 *

        // 한두 글자면 그냥 뒤에 별표 붙여서 내보낸다. 

        $string_changed = mb_substr($string, 0, 1, 'utf-8') . '*'; 

    }else if($legnth >= 8){ //글이 8개 크거나 같을때 5개 *

        $string_changed = preg_replace('/(?<=.{5})./u','*',$length);  <-요거 변수는 알아서...

    }else if ($length < 8) {  //글이 8개 미만일때는 3개 *

        $string_changed = preg_replace('/(?<=.{3})./u','*',$length);  <-요거 변수는 알아서...

    }

    return $string_changed; 

}

 

질문으로만 봤을때는 $list[$i]['wr_subject']  <- 이거를 쓰는건데 

$변수 를 대입하시면 되는데 레이아웃이 왜 깨지는지는 모르겠지만 ㄷㄷㄷ


 

 

 


var teg = $(".teg").val();
 
 
else if(teg.length > 8){



 $list[$i]['wr_subject'] = preg_replace('/(?<=.{5})./u','*',$list[$i]['wr_subject']);

}

변수하나 추가해서. $ 에 삽입. 그후 length 로 숫자 감지후 5글자 이상 감지해서 추출하면 되지 않을까요? else if 문은 if 바로 뒤에 넣으면 될 것 같아요
답변을 작성하시기 전에 로그인 해주세요.
전체 123,472 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT