홈으로 | 무료회원가입 | 아이디/비번찾기
추천음악방송
PHP로 작동하는 RSS 읽는 함수
10년 전
<?
// PHP RSS Reader v0.1
// Code By Jusun at 2007-01-25
// 라이센스 : FREE ... 소스로 인한 뒷일은 책임 못짐...

// RSS 읽어오기
function getRSS($url){
    $fd = fopen ($url, "r");
    while (!feof ($fd)) {
        $buffer .= fgets($fd, 4096);
    }
    fclose ($fd);
    return $buffer;
}

// 내용만 뽑아내기
function parseTag($tag,$value){
    $value =  explode("</".$tag.">",$value);
    $value = explode("<".$tag.">",$value[0]);
    return $value[1];
}

//한글 자르기
function hstrCut($msg,$cut_size,$end_str = "...") {
    if( (strlen($msg) > $cut_size) & ($cut_size > 0) ) {
            $msg = substr($msg,0,$cut_size);
            $msg = preg_replace("/(([\\x80-\\xFE].)*)[\\x80-\\xFE]?$/","\\1",$msg);
            $msg .= $end_str;
    }
    return $msg;
}

// 보여지는 부분
function RSS_reader($count,$url,$encode = "EUC-KR"){
    $channel = parseTag("channel",getRSS($url));
    // 인코딩 변환
    if($encode == "UTF-8"){
        $channel = iconv("UTF-8","EUC-KR",$channel);
    }
    $channel = str_replace("</item>","",$channel);
    $item = explode("<item>",$channel);
    // 제목 처리
    $siteTitle = parseTag("title",$item[0]);
    $siteLink = parseTag("link",$item[0]);
    $siteDescription = parseTag("description",$item[0]);
    
    //제목 출력
    $html = "[<a href=\"$siteLink\" target=\"_blank\">$siteTitle</a>]<br />";

    //각 게시물 제목 처리
    for($i=1;$i<=$count;$i++){
        if(!isset($item["$i"])) break;
        //제목 가져오기
        $title = hstrCut(parseTag("title",$item[$i]),30);
        //링크 가져오기
        $link = parseTag("link",$item[$i]);
        //내용 가져오기
        $description = parseTag("description",$item[0]);

        $html .= "<a href=\"$link\" target=\"_blank\">$title</a> <br />";    
    }

    // 출력
    echo $html;

}
?>

함수의 사용법은 다음과 같습니다.

RSS_reader("7","http://blog.jusun.org/tt/rss","UTF-8");

RSS_reader("가져올갯수","RSS주소","인코딩");

인코딩은 UTF-8 또는 생략 가능입니다. 생략하면 EUC-KR로..

RSS가 잘 안읽어지면 UTF-8 , EUC-KR 왔다갔따 바꿔보세요.. ^^
추천추천 : 549 추천 목록
번호 제목
3,025
 윈도우10 시스템파일 손상 (초간단 오류 복구방법!!)
3,024
 PHP 파일 존재 여부 파악하기(로컬 파일 존재 및 원격지 파일 존재)
3,023
 [CSS] 박스 세로 가운데 중앙 정렬 6가지
3,022
 CSS Layout 수평 & 수직 정렬
3,021
 여러 도메인들 간 쿠키 공유하기
3,020
 태그 사이에 있는 텍스트를 추출
3,019
 [JQuery] textbox focus on off일때 숫자 콤마 보여주기
3,018
 쿠키 생성,가져오기,삭제
3,017
 사용자 함수 모음
3,016
 마우스,키보드 제한 ( 오른쪽클릭,드래그,영역선택등..)
3,015
 [HTML5] <video> - DOM으로 제어하기
3,014
 HTML5 video 태그에서 영상 좌우반전
3,013
 PHP - 특정 태그 및 문자열 추출, 제거
3,012
 [PHP] define과 defined의 차이
3,011
 우클릭 완벽차단 스크립트
3,010
 iframe 높이 100% 맞추기
3,009
 curl 함수를 이용한 HTTP REFERER 변경
3,008
 윈도우10 시스템 파일 및 Dism 검사
3,007
 텍스트 줄바꿈, 글자자르기 CSS
3,006
 jQuery Mobile에서 유용한 코드 10가지.
3,005
 [PHP] dirname()함수와 $_SERVER 관련 상수들
3,004
 [PHP] 파일 크기, 사이즈 불러오는 함수, filesize()
3,003
 [jQuery] jQuery Quick API
3,002
 [ transition ] 링크 hover 색상 변화 속도 조절
3,001
 PHP 5.3.0 에서 사라진 함수들 대체
목록
뮤직트로트 부산광역시 부산진구 가야동 ㅣ 개인정보취급방침
Copyright (C) musictrot All rights reserved.