데이터에서 이름을 추출할때 두번째 자리부터 OO으로 표시

· 2012-07-17 (화) 09:57:53 · 3921 · 3
지금 게시판하나를 짜고 있는데 막혀서요
 
다름이 아니라 작성자의 이름을 노출 시켜야 하는데
 
홍길동이면 홍OO나, 홍O동으로 노출을시키고 싶은데
 
함수가 아니 하는방법이 잘 기억이 가물가물..
 
혹.. 아시는분 계시면 부탁 드립니다...
|

댓글 3개

2012-07-17 (화) 12:12:30
substr_replace($name,'*',4,2);

은 이름뒤에 *로 출력이됩니다.
$name 가 네이버이면 네이*로 출력이됩니다.
나버지 부분은 알맞게 수정 하시면 됩니다.
아주 많이 감사합니다.
스쿨이 열리지 않는군요. 예전 댓글 링크 남기면 좋겠는데….
아무튼 Multibyte String Functions 쓸 수 있으면 이런 방법도 있어요.

$name = '홍길동';
mb_internal_encoding(mb_detect_encoding($name,'UTF-8,EUC-KR'));
for($i=0,$l=mb_strlen($name),$t=array();$i<$l;$i++)$t[]=mb_substr($name,$i,1);

$t에는 한 글자씩 나뉘어 배열로 '홍','길','동' 할당됩니다. $l은 글자 길이 3.
이 두 값을 이용해 지지고 볶고 하면 됩니다.

$test = $t; // 편하게 보기 위한 할당
$test[0] = '○'; echo implode('',$test); // ○길동

$test = $t;
$test[1] = '○'; echo implode('',$test); // 홍○동

$test = $t;
$test[2] = '○'; echo implode('',$test); // 홍길○
$test[$l-1] = '○'; echo implode('',$test); // 홍길○ … 길이 상관없이 마지막 한 글자

$test = $t;
echo $test[0].str_repeat('○',$l-1); // 홍○○

UTF-8 환경이면 아래처럼 짧게도 가능합니다.
$name = '홍길동';
preg_match_all('/./u',$name,$t); $t=$t[0];

EUC-KR 환경이면
$name = '홍길동';
preg_match_all('/[\x80-\xFF].|./',$name,$t); $t=$t[0];

‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥

http://phpschool.com/gnuboard4/bbs/board.php?bo_table=qna_function&wr_id=309125
:
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

8,188건
+
제목 글쓴이 날짜 조회
13-02-18 조회 3,510
13-02-15 조회 3,904
13-02-12 조회 5,743
13-02-04 조회 4,061
13-01-30 조회 4,927
13-01-25 조회 3,655
13-01-18 조회 3,750
13-01-18 조회 5,480
13-01-18 조회 6,087
13-01-18 조회 3,768
13-01-18 조회 4,717
13-01-17 조회 4,034
13-01-17 조회 3,545
13-01-17 조회 3,609
13-01-17 조회 3,954
12-12-31 조회 3,478
12-12-28 조회 4,897
12-12-28 조회 5,955
12-12-28 조회 3,397
12-12-27 조회 3,543
12-12-27 조회 4,275
12-12-20 조회 5,180
12-12-18 조회 9,031
12-12-14 조회 4,883
12-12-10 조회 3,597
12-12-10 조회 3,072
12-12-01 조회 3,796
12-11-25 조회 7,274
12-11-22 조회 5,905
12-11-20 조회 2.4만
12-11-19 조회 4,305
12-11-13 조회 3,837
12-11-12 조회 3,847
12-10-23 조회 4,680
12-09-25 조회 4,312
12-09-05 조회 6,920
12-09-04 조회 7,483
12-09-04 조회 3,411
12-08-30 조회 3,357
12-08-30 조회 3,582
12-08-29 조회 3,325
12-08-29 조회 3,124
12-08-26 조회 3,447
12-08-18 조회 3,675
12-08-17 조회 3,961
12-08-16 조회 3,495
12-08-14 조회 3,164
12-08-13 조회 5,570
12-08-13 조회 3,325
12-08-11 조회 3,603
12-08-10 조회 3,158
12-08-07 조회 3,942
12-08-07 조회 3,179
12-08-06 조회 3,385
12-07-31 조회 3,165
12-07-30 조회 3,484
12-07-30 조회 3,116
12-07-29 조회 3,295
12-07-29 조회 3,044
12-07-27 조회 3,102
12-07-21 조회 2,975
12-07-19 조회 3,177
12-07-19 조회 2,759
12-07-17 조회 3,391
12-07-17 조회 3,005
12-07-17 조회 3,922
12-07-16 조회 2,946
12-07-15 조회 3,077
12-07-14 조회 3,126
12-07-13 조회 8,209
12-07-11 조회 3,369
12-07-10 조회 9,941
12-07-09 조회 3,143
12-07-08 조회 4,327
12-07-06 조회 3,613
12-07-05 조회 3,907
12-07-05 조회 3,316
12-07-05 조회 3,169
12-07-03 조회 3,216
12-07-03 조회 3,155
12-07-02 조회 3,184
12-07-02 조회 2,813
12-06-30 조회 3,424
12-06-26 조회 3,134
12-06-22 조회 3,174
12-06-22 조회 3,105
12-06-21 조회 3,099
12-06-21 조회 3,317
12-06-20 조회 3,483
12-06-20 조회 3,148
12-06-20 조회 3,059
12-06-18 조회 3,943
12-06-17 조회 3,372
12-06-15 조회 2,993
12-06-14 조회 2,867
12-06-13 조회 3,495
12-06-11 조회 3,316
12-06-08 조회 3,259
12-06-06 조회 3,112
12-06-06 조회 3,545