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

· 2012-07-17 (화) 09:57:53 · 3924 · 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,513
13-02-15 조회 3,909
13-02-12 조회 5,746
13-02-04 조회 4,064
13-01-30 조회 4,929
13-01-25 조회 3,662
13-01-18 조회 3,751
13-01-18 조회 5,483
13-01-18 조회 6,092
13-01-18 조회 3,772
13-01-18 조회 4,719
13-01-17 조회 4,038
13-01-17 조회 3,548
13-01-17 조회 3,610
13-01-17 조회 3,959
12-12-31 조회 3,487
12-12-28 조회 4,897
12-12-28 조회 5,957
12-12-28 조회 3,399
12-12-27 조회 3,547
12-12-27 조회 4,277
12-12-20 조회 5,185
12-12-18 조회 9,034
12-12-14 조회 4,885
12-12-10 조회 3,602
12-12-10 조회 3,078
12-12-01 조회 3,798
12-11-25 조회 7,275
12-11-22 조회 5,905
12-11-20 조회 2.4만
12-11-19 조회 4,305
12-11-13 조회 3,839
12-11-12 조회 3,851
12-10-23 조회 4,683
12-09-25 조회 4,317
12-09-05 조회 6,923
12-09-04 조회 7,484
12-09-04 조회 3,413
12-08-30 조회 3,359
12-08-30 조회 3,585
12-08-29 조회 3,327
12-08-29 조회 3,128
12-08-26 조회 3,449
12-08-18 조회 3,677
12-08-17 조회 3,966
12-08-16 조회 3,500
12-08-14 조회 3,166
12-08-13 조회 5,573
12-08-13 조회 3,330
12-08-11 조회 3,607
12-08-10 조회 3,164
12-08-07 조회 3,947
12-08-07 조회 3,181
12-08-06 조회 3,390
12-07-31 조회 3,165
12-07-30 조회 3,486
12-07-30 조회 3,117
12-07-29 조회 3,295
12-07-29 조회 3,045
12-07-27 조회 3,102
12-07-21 조회 2,975
12-07-19 조회 3,179
12-07-19 조회 2,760
12-07-17 조회 3,398
12-07-17 조회 3,008
12-07-17 조회 3,925
12-07-16 조회 2,952
12-07-15 조회 3,080
12-07-14 조회 3,128
12-07-13 조회 8,212
12-07-11 조회 3,372
12-07-10 조회 9,942
12-07-09 조회 3,145
12-07-08 조회 4,332
12-07-06 조회 3,615
12-07-05 조회 3,907
12-07-05 조회 3,321
12-07-05 조회 3,173
12-07-03 조회 3,217
12-07-03 조회 3,159
12-07-02 조회 3,187
12-07-02 조회 2,815
12-06-30 조회 3,425
12-06-26 조회 3,135
12-06-22 조회 3,177
12-06-22 조회 3,109
12-06-21 조회 3,099
12-06-21 조회 3,319
12-06-20 조회 3,485
12-06-20 조회 3,149
12-06-20 조회 3,062
12-06-18 조회 3,943
12-06-17 조회 3,373
12-06-15 조회 2,994
12-06-14 조회 2,871
12-06-13 조회 3,495
12-06-11 조회 3,318
12-06-08 조회 3,262
12-06-06 조회 3,122
12-06-06 조회 3,545