웹마스터 팁

스킨 시스템 사용하기

2003.07.25 22:46

김규백

http://yubikiri.com다른사이트에 있는 파일 쎄비기 올린 사람입니다 ^^;;
연이어서 스킨 만드는 방법을 알려드리겠습니다.
실제로 제가 사용하는 방법입니다.

<?php
//일단 함수를 하나 정의합니다.
//함수의 역활은 스킨을 읽어서 스킨에서 사용된 여러 변수에 쓰일
// php 에서 사용하는 $변수 를 찾아주는 역활을 합니다.

function skin($var)
{
global $$var[1];
return $$var[1];
}

$fp=@fopen("test.html","r"); // test.html 을 열고
$skindata=@fread($fp,@filesize("test.html")); // 읽어서 $skindata에 저장하고
@fclose($fp); // 닫습니다.

/* test.html 의 내용
-{TEST}-<br>
<marquee>-{OK}-</marquee>
*/

$TEST="테스트 입니다.";
$OK="성공입니다.";

$result=preg_replace_callback("/-{([A-Z]+)}-/",skin,$skindata);
// 첫번째 인자는 변수의 형태. 표현식의 형태로 표현합니다.
// 여기서는 -{영문대문자만}- 이런 식으로 사용합니다.
// 두번째 인자는 적용할 함수. 앞에서 정의한 skin을 이용합니다.
// 세번째 인자는 스킨을 적용할 데이터 입니다.

print $result; // 출력합니다.
?>

include 를 이용한 스킨방식은 스킨 파일내에서 php소스를 실행할수 있는게 장점이자 단점입니다.
위의 방식을 사용한다면 스킨파일 내에서의 php소스 실행은 불가능 합니다.

하지만 스킨을 한번 처리하고 다시 한번더 처리할수도 있고 속도도 빠릅니다. 게다가.......기타등등의 장점 ㅡㅡ;

잘 응용해보시고 잘 사용하세요 ^^