현재 위치: > 최신 기사 목록> PHP에서 페이지 분리를 달성하기 위해 템플릿 엔진을 사용하는 방법 : Smarty 예제의 자세한 설명

PHP에서 페이지 분리를 달성하기 위해 템플릿 엔진을 사용하는 방법 : Smarty 예제의 자세한 설명

gitbox 2025-06-16

1. 템플릿 엔진이란 무엇입니까?

템플릿 엔진은 데이터를 디스플레이에서 분리하는 기술이며 핵심 개념은 비즈니스 로직을 디스플레이 로직과 분리하는 것입니다. 페이지 마크 업 및 프리젠 테이션 로직을 분리하면 (예 : 루프의 경우) 페이지 생성 효율성을 향상시키고, 중복 코드를 줄이며, 시스템 유지 가능성을 향상시킵니다.

2. 템플릿 엔진을 사용하는 이유

전통적인 개발 방법은 비즈니스 논리를 프리젠 테이션 로직과 혼합하여 복잡한 코드 유지 보수를 초래합니다. 템플릿 엔진을 사용하면 두 가지를 분리하여 코드를 모듈화하여 유지 관리 및 재사용을보다 쉽게 ​​유지하고 중복 노동을 줄이며 개발 효율성을 향상시킬 수 있습니다.

3. 페이지 분리를 달성하기 위해 템플릿 엔진을 사용하는 방법

PHP에서는 일부 타사 템플릿 엔진 (Smarty, Twig 등)을 사용하여 페이지 분리를 달성 할 수 있습니다. 이 기사는 템플릿 엔진을 사용하여 페이지를 별도의 페이지를 사용하는 방법을 설명하기 위해 Smarty가 예제됩니다.

3.1 Smarty를 설치하십시오

먼저 Smarty를 다운로드하여 PHP의 include_path 경로로 압축해야합니다. Smarty/Vendor/Smarty/Path로 Smarty를 압축한다고 가정하면 Smarty 클래스 라이브러리를 PHP 파일에 소개해야합니다. 샘플 코드는 다음과 같습니다.

 
require_once('/vendor/smarty/Smarty.class.php');

3.2 Smarty 인스턴스 생성

다음으로 Smarty 클래스의 인스턴스를 만들어야합니다. 코드는 다음과 같습니다.

 
$smarty = new Smarty();
$smarty->setTemplateDir(__DIR__ . '/templates/');
$smarty->setCompileDir(__DIR__ . '/templates_c/');
$smarty->setCacheDir(__DIR__ . '/cache/');
$smarty->setConfigDir(__DIR__ . '/configs/');
$smarty->left_delimiter = '{';
$smarty->right_delimiter = '}';

이 코드에서는 먼저 Smarty의 인스턴스를 생성하고 템플릿 디렉토리, 컴파일 디렉토리, 캐시 디렉토리 및 구성 디렉토리를 설정합니다. PHP 구문과의 충돌을 피하기 위해 Smarty 템플릿의 왼쪽 및 오른쪽 구분 장치도 설정합니다.

3.3 렌더링 템플릿

다음으로 샘플 코드를 다음과 같이 템플릿 파일 (예 : index.tpl)을 만들어야합니다.

 
{ $title }
Welcome to { $title }
Today is { $date }

템플릿 파일에서 Smarty의 변수 교체 구문을 사용하여 $ 제목과 $ DATE 변수를 템플릿의 적절한 위치에 삽입합니다.

그런 다음 PHP 파일에서 Smarty의 Fetch 메소드를 사용하여 템플릿을 렌더링하면 코드 예제는 다음과 같습니다.

 
$smarty->assign('title', 'My Website');
$smarty->assign('date', date('Y-m-d'));
$smarty->display('index.tpl');

이 코드에서는 값을 $ 제목 및 $ 날짜 변수에 할당 한 다음 Smarty의 디스플레이 메소드를 호출하여 템플릿을 렌더링합니다. 마지막으로 브라우저에 다음을 표시합니다.

 
<title>My Website</title>
<h1>Welcome to My Website</h1>
<p>Today is 2022-01-01</p>

4. 요약

템플릿 엔진을 사용하면 비즈니스 로직을 프리젠 테이션 로직과 효과적으로 분리시켜 유지 보수 비용과 코드 수정의 어려움을 줄일 수 있습니다. 이 기사는 예제로 Smarty를 취하고 템플릿 엔진을 사용하여 PHP에서 페이지 분리를 달성하는 방법을 소개합니다. Smarty 설치, 인스턴스 생성, 템플릿 렌더링 등의 기본 작업을 마스터함으로써 개발자는 명확하고 관리 가능한 PHP 프로젝트를보다 효율적으로 구축 할 수 있습니다.