ThinkPhp는 MVC (Model-View-Controller) 설계 모델을 채택하여 개발자가 웹 애플리케이션을 개발할 수 있도록하는 PHP를 기반으로 한 오픈 소스 프레임 워크입니다. ThinkPhp에서는 템플릿 파일이 데이터 및 인터페이스 레이아웃을 표시하는 데 사용되므로 위치는 매우 중요합니다.
기본적으로 템플릿 파일은 응용 프로그램 디렉토리의 보기 폴더에 저장됩니다. 특정 경로 형식은 다음과 같습니다. 응용 프로그램 디렉토리/보기/컨트롤러 이름/작동 이름 .html . 예를 들어, 블로그 컨트롤러의 인덱스 작업에 해당하는 템플릿 파일 경로는 응용 프로그램/보기/블로그/index.html 입니다.
또한 ThinkPhp는 템플릿 상속을 지원하므로 개발자는 템플릿 코드를보다 유연하게 구성하고 재사용 할 수 있습니다. 기본 레이아웃 파일은 일반적으로 응용 프로그램/보기/레이아웃 디렉토리에 있으며 상속 레이아웃은 {extend name = "layout/layout"/} 구문을 통해 템플릿 파일에 지정됩니다.
ThinkPhp에서는 템플릿에 대한 호출 파일은 일반적으로 컨트롤러를 통해 수행됩니다. 컨트롤러는 경로와 템플릿 사이의 브리지 역할을하며 요청을 처리하고 해당 템플릿 뷰를 렌더링하는 일을 담당합니다. 페치 방법은 주로 템플릿 파일을 호출하는 데 사용됩니다.
참조 템플릿의 기본 형식은 다음과 같습니다.
<span class="fun">$ this-> fetch ( '컨트롤러 이름/작동 이름');</span>
예를 들어, 블로그 컨트롤러의 인덱스 메소드에서 템플릿 파일 애플리케이션/보기/블로그/index.html을 참조하는 코드 예제는 다음과 같습니다.
<span class="fun">$ this-> fetch ( 'blog/index');</span>
ThinkPhp는 자체 템플릿 엔진을 채택하고 풍부하고 유연한 템플릿 구문을 보유하고있어 개발자가 데이터를 표시하고 논리적 판단을 구현할 수 있도록 촉진합니다. 일반적인 구문 예 :
변수 출력 : {$ variable}
조건부 판단 : {if 조건} 조건이 true 일 때 컨텐츠 표시 {elseif 조건} 다른 조건이 충족 될 때 컨텐츠 표시 {else} 조건이 충족되지 않으면 {/if}.
루프 출력 : {foreach $ array as $ item} 루프 컨텐츠 {/foreach}
템플릿 댓글 : {* 댓글 내용*}
특수 마커는 ThinkPhP 템플릿에서도 데이터 디스플레이 및 논리 처리를 제어하기 위해 사용됩니다. 이 마커는 일반적으로 주석 형태로 작성됩니다 . 버팀대에는 변수, 조건부 판단 등이 포함될 수 있습니다. 다음은 다음과 같습니다.
<!--{$variable}-->
<!--{if $condition} 조건의 내용 {else} 내용은 조건을 충족하지 않습니다 {/if}-->
<!--{foreach $array as $item} 루프 컨텐츠 {/foreach}-->
// 파일 경로:application/index/controller/Blog.php
namespace app\index\controller;
use think\Controller;
class Blog extends Controller
{
public function index()
{
// 데이터를 얻으려면 시뮬레이션하십시오
$data = ['title' => 'Hello World', 'content' => 'This is a blog post.'];
// 템플릿에 데이터를 할당합니다
$this->assign('data', $data);
// 렌더링 및 출력 템플릿
return $this->fetch();
}
}
<!-- 파일 경로:application/view/Blog/index.html -->
<h2>{$data.title}</h2>
<p>{$data.content}</p>
위의 예에서 컨트롤러는 할당 메소드를 통해 데이터를 템플릿 파일로 전달하고 해당 컨텐츠는 {$ data.title} 및 {$ data.content} 를 통해 출력됩니다.
ThinkPhp 템플릿 파일은 주로 응용 프로그램 디렉토리의 보기 폴더에 저장됩니다. 개발자는 컨트롤러를 통해 페치 메소드를 호출하여 템플릿을 렌더링하고 지정 메소드를 사용하여 데이터를 템플릿보기로 전달합니다. 템플릿 파일은 데이터 표시 및 논리 제어를 효과적으로 실현하고 개발 효율성 및 코드 재사용 성을 향상시킬 수있는 Rich 구문 및 태깅을 지원합니다.