웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
정규표현식 쓰지 않고 자동링크하기!! 한글주소까지 문제없슴돠~~!!
2002.11.05 23:01
제가 게시판을 만들고 있는데요...이제 거의 다되어 갑니다.
제 목표는 제로보드의 아성에 도전하는 것인데요..
아무래도 치밀함 면에서는 아직 많이 뒤떨어지지만 어느정도는 다 되어 갑니다.
자동링크기능을 저 나름대로 만들어 보았습니다.
원리는,
한줄 단위로 분리하고, 또 그 줄을 공백문자로 분리하고,
마지막으로 http://라는 문자를 포함하고 있는지를 알아내어 링크로 만드는 것이지요..
정규표현식이라는 것을 아직 완벽히 모르기때문도 있지만, php에서의 정규표현식이 한글은 지원하지 않는다고 알고 있기에
한글주소까지 지원하기 위해서 이런 방식을 썼습니다.
자, 이제 한번 볼까요?
//<---------------자동링크기능
$text=explode("rn",$content);//$text배열로 나누어줌-(줄단위로)
$content="";//초기화
foreach($text as $value){
if(count(explode("http://",$value))>1){//그 줄이 http://를 포함하고 있다면 좀더 자세히 들어가자~
$new2=explode(" ",$value);//공백문자단위로 끊어주고,
foreach($new2 as $value2){
if(count(explode("http://",$value2))>1) $content.=" <a href='$value2' target=_blank>$value2</a>";//그 단위에 http://를 포함하면,링크를 걸어준다.
else $content.=" ".$value2;//아니면 그냥 공백문자와 함께 합쳐주고..
}
}else $content.="rn".$value;//줄 단위로 끊은것은 라인피드문자와 함께 합쳐준다.
}
unset($new);
unset($new2);
unset($text);//메모리 비워줌.
//>
간단하죠?^^;; 이 원리를 이용하면 파일내의 색인기능도 구현할 수 있습니다.
밑에 제가 올린 함수 찾아주는 소스도 이와 같은 맥락입니다.~^^
제 목표는 제로보드의 아성에 도전하는 것인데요..
아무래도 치밀함 면에서는 아직 많이 뒤떨어지지만 어느정도는 다 되어 갑니다.
자동링크기능을 저 나름대로 만들어 보았습니다.
원리는,
한줄 단위로 분리하고, 또 그 줄을 공백문자로 분리하고,
마지막으로 http://라는 문자를 포함하고 있는지를 알아내어 링크로 만드는 것이지요..
정규표현식이라는 것을 아직 완벽히 모르기때문도 있지만, php에서의 정규표현식이 한글은 지원하지 않는다고 알고 있기에
한글주소까지 지원하기 위해서 이런 방식을 썼습니다.
자, 이제 한번 볼까요?
//<---------------자동링크기능
$text=explode("rn",$content);//$text배열로 나누어줌-(줄단위로)
$content="";//초기화
foreach($text as $value){
if(count(explode("http://",$value))>1){//그 줄이 http://를 포함하고 있다면 좀더 자세히 들어가자~
$new2=explode(" ",$value);//공백문자단위로 끊어주고,
foreach($new2 as $value2){
if(count(explode("http://",$value2))>1) $content.=" <a href='$value2' target=_blank>$value2</a>";//그 단위에 http://를 포함하면,링크를 걸어준다.
else $content.=" ".$value2;//아니면 그냥 공백문자와 함께 합쳐주고..
}
}else $content.="rn".$value;//줄 단위로 끊은것은 라인피드문자와 함께 합쳐준다.
}
unset($new);
unset($new2);
unset($text);//메모리 비워줌.
//>
간단하죠?^^;; 이 원리를 이용하면 파일내의 색인기능도 구현할 수 있습니다.
밑에 제가 올린 함수 찾아주는 소스도 이와 같은 맥락입니다.~^^
댓글 6
제목 | 글쓴이 | 날짜 |
---|---|---|
플레쉬 마우스 오버하면└---┘ 이런식으로 나오는 것 자바스크립트로 제어하기 | Sena㏇ | 2007.02.24 |
비밀번호 입력해야 해당 페이지 보이기 [3] | 이명우 | 2007.02.28 |
Light box 이용하기.. [10] | 이진수 | 2007.03.12 |
자바스크립 동영상 플레이어 2 (네이버 발췌) [4] | 이진수 | 2007.03.28 |
간단한 검색 창입니다. [3] | sunholic | 2007.03.31 |
웬 소리가????(하이퍼링크 효과음) [7] | 김민환 | 2007.04.08 |
스크립트 객체로 AJAX 구현하기 [12] | nextini | 2007.08.20 |
링크 클릭시 점선 → 링크, 이미지, form 태그 동시 적용 [2] | 펠릭스 | 2007.11.28 |
배열 활용하기(초급) | 예뜨락 | 2007.12.03 |
프린트소스 인데요.. [1] | 이영훈346 | 2007.12.12 |
간단한 Ajax 메모 [1] | 엔시™ | 2007.12.31 |
주민등록번호로 성별/나이/연령대 구분 [4] | 강병기 | 2008.01.09 |
Javascript 달력 - 거트 캘린더 [4] | 강세임 | 2008.01.10 |
자신의 홈피에 날씨를 달아보자. [2] | Rising.kr | 2008.01.21 |
자신의 홈피에 통합 검색 순위 (검색어, 음악, 영화, 도서)를 달아보자. [1] | Rising.kr | 2008.01.21 |
자신의 홈페이지에 (검색,사전,로또,주식) 통합버전을 넣어보자. [3] | Rising.kr | 2008.01.21 |
동적 테이블 (행추가, 특정행 삭제) | Juny. | 2008.02.20 |
동적 INPUT | june44.myid.net/ | 2008.03.31 |
프레임홈일때 부분프레임 무단링크 방지하기 [3] | gosoo99 | 2008.04.08 |
웹페이지에 마우스 따라다니는 예쁜 시계를 넣자 [5] | gosoo99 | 2008.04.08 |