ThinkPHP6.0 보기
ThinkPHP6 보기
템플릿 엔진은
普通标签
和XML标签
다양한 목적으로 사용되는 두 가지 태그 정의 방법
태그 유형 | Description |
일반 태그를 지원합니다. | 출력 변수용 , 함수 필터링 및 일부 기본 작업 |
XML 태그 | 는 태그 라이브러리 태그라고도 하며 주로 일부 논리적 판단, 제어 및 루프 출력을 완료하고 확장 가능합니다. |
1. 연산자
연산자 | 예 |
+ | {$a+$b} |
- | {$a-$b} |
* | {$a*$ b} |
/ | {$a/$b} |
% | {$a%$b} |
++ | {$a++} 또는 {++$a} |
-- | {$a--} 또는 {--$a} |
종합 연산 | {$a+$b*10+$c} |
3항 연산자 | {$a ==$b '예 ' : '아니요'} |
컨트롤러 파일
공용 함수 인덱스(){
View::ass('a',100);
View::ass('b',21);
return View::fetch();
}
파일 보기
<div>{$a+$b}</div>
<div>{$a-$b}</div>
<div> {$a*$b}</div>
<div>{$a/$b}</div>
<div>{$a%$b}</div>
<div>{$a++}</div>
<div>{++$a}</div>
<div>{$a--}</div>
< ;div>{--$a}</div>
<div>{$c ? '존재함' : '존재하지 않음'}</div>
2. 템플릿 기능
메소드 | 설명 |
날짜 | 날짜 형식 지정 (다양한 시간 유형 지원) |
format | 문자열 형식 지정 |
upper | 대문자로 변환 |
lower | Convert 첫 번째 출력 배열 요소를 소문자로 |
first | 배열의 첫 번째 요소를 출력합니다. |
last | 배열의 마지막 요소를 출력합니다. |
default | 기본값 |
raw | 사용 안 함(기본값) Escape |
md5 | md5 암호화 |
substr | 인터셉트 문자열 |
여러 함수 호출 가능
컨트롤러 파일
<div>{$arr|last}</div><div>{$default| "오우양 케"}</div>public function index(){
View::ass('time',1576048640);
View::ass('num',10.0032); ㅋㅋㅋ ]);
return View::fetch();
}
파일 보기<div>{$time|date='Y-m-d H:i:s'}</div> <div>{$num|format='%02d'}</div>
<div>{$str|upper}</div>
<div>{$str|lower }< ;/div>
<div>{$arr|first}</div>
<div>{$str|substr=0,3}</div>
<div>{$str|md5}</div> <div>{$str|lower|substr=0,3}</div>
3. 루프 태그태그의 사용법은 출력을 루프하는 데 사용되는 PHP 구문과 매우 유사합니다. 배열 또는 객체 속성
controller file
public function index(){ $arr = [
name' => 'Ouyang Ke'
- ],
foreach
[i 'id' = & gt; 2, 'name' = & gt; 'Mr. Zhu'
],
[ 'id' = & gt; 3, ㅋㅋㅋ ;/div>{/foreach}
4. volist loop label
2차원 배열의 결과 출력
name 템플릿 할당의 변수 이름
id 현재 루프 변수는 원하는 대로 이름을 지정하세요
key subscript, 1부터 시작, 기본 변수 i
offset 시작 줄 번호
length 줄 번호 가져오기
empty 데이터가 비어 있으면 이 텍스트를 표시합니다.
파일 보기
{volist name="arr" id="v" key="k" offset="1" length="2"}
<div>
<span>ID : {$v['id' ]}</span>
| 조건부 판단에 사용되는 PHP 구문과 매우 유사
controller file
public function index(){
View::asse('status',1);
- View::ass('order_status', 4);
return View::fetch();
if
标签的用法和PHP语法非常接近,用于条件判断
controller文件
public function index(){
View::assign('status',1);
View::assign('order_status',4);
return View::fetch();
}
view文件
{if $status == 1}
<div>开启</div>
{/if}
{if $status == 0}
<div>关闭</div>
{else/}
<div>开启</div>
{/if}
{if $order_status == 0}
<div>未支付</div>
{elseif $order_status == 1/}
<div>已支付 待发货</div>
{elseif $order_status == 2/}
<div>已发货 待收货</div>
{elseif $order_status == 3/}
<div>已收货 待评论</div>
{elseif $order_status == 4/}
<div>已完成</div>
{/if}
六、switch 判断标签
}switch
파일 보기
{if $status == 1}
<div>Open</div>
{/if}
{if $status == 0}
<div>off</div>🎜🎜{else/}🎜🎜 <div>on</div>🎜🎜{/if}🎜 🎜
🎜🎜{if $order_status == 0 }🎜🎜 <div>미결제</div>🎜🎜{elseif $order_status == 1/}🎜🎜 <div>배송비 결제</div> ;🎜🎜{elseif $order_status == 2 /}🎜🎜 <div> 배송되었으며 영수증 대기 중</div>🎜🎜{elseif $order_status == 3/}🎜🎜 <div> ;🎜🎜{elseif $order_status == 4/}🎜🎜 <div>완료</div>🎜🎜{/if}🎜🎜🎜 6. 판단 태그 전환🎜🎜🎜🎜전환
태그 사용법 및 PHP 구문은 매우 유사하며 조건부 판단에 사용됩니다🎜🎜🎜🎜파일 보기🎜🎜🎜{switch $order_status}🎜🎜 {case 0}<div>Unpaid</div>{/case}🎜🎜 {case 1};div>댓글 접수 및 대기 중</div>{/case}🎜🎜 {case 4}<div>완료됨</div>{/case}{/switch}
7. 파일 포함
include
태그, 템플릿 파일include
标签,引入模版文件
load
load
태그 소개, 리소스 파일(css, js) 소개파일 보기, 헤더 및 테일 파일 넣기
{include file="public/header" /}
{include file="public/left" /}{load href="/static/layui/css/layui.css" /}
{load href="/static/layui/layui.js" /}{include file="public /tail" /}
Eight. 기타 태그1. 조건부 태그
🎜🎜🎜tag 설명 in 변수에 특정 값이 있는지 판단 notin 판단하세요 변수 특정 값이 존재하는지 여부 between 변수가 존재하는지 확인 특정 값 notbetween 변수가 존재하지 않는지 확인 특정 범위 값 present 변수가 정의되었는지 확인 존재하지 않음 변수가 정의되지 않았는지 판단 empty 변수가 비어 있는지 판단 notempty 변수가 비어 있지 않은지 판단 정의됨 상수가 정의되었는지 확인 상수가 정의되지 않았는지 확인notdefine
public function index(){ View::assign('number',100); View::assign('string',''); return View::fetch(); }{in name="number" value="99,100,101"} number等于99,100,101任意一个值 {/in} {notin name="number" value="99,100,101"} number不等于99,100,101任意一个值 {/notin} {between name="number" value="1,10"} number等于1 到 10 之间的任意一个值 {/between} {notbetween name="number" value="1,10"} number不等于1 到 10 之间的任意一个值 {/notbetween} {present name="number"} number已经定义 {/present} {notpresent name="n"} n还没有定义 {/notpresent} {empty name="string"} name为空值 {/empty} {notempty name="string"} name有值 {/notempty} {defined name="NAME"} NAME常量已经定义 {/defined} {notdefined name="NAME"} NAME常量未定义 {/notdefined}2. 태그 비교
태그 설명 eq 과 같음 neq 은 같지 않음 보다 큽니다. gt 은 egt 는 lt 보다 큼 elt보다 작음 는 nheq heq보다 작거나 같음 아니요 상수 public function index(){ View::assign("number",100); View::assign("string","欧阳克"); return View::fetch(); }{eq name="number" value="100"} number 等于 100 {/eq} {neq name="number" value="101"} number 不等于 101 {/neq} {gt name="number" value="33"} number 大于 33 {/gt} {egt name="number" value="100"} number 大于等于 100 {/egt} {lt name="number" value="200"} number 小于 200 {/lt} {elt name="number" value="100"} number 小于等于 100 {/elt} {heq name="string" value="欧阳克"} string 恒等于 欧阳克 {/heq} {heq name="string" value="朱老师"} string 恒不等于 朱老师 {/heq}3. 루프 태그
🎙step: 단계 값, 기본값 1
설명name: 루프 변수 이름, 기본값 i {for start="1" end="50" step="5" name="i"} {$i}<br/> {/for}4, 기타 태그 태그
- literal
- 그대로 출력
- php
기본 PHP 코드 사용
{literal} {$name} 这里$name不会被当作变量,而是普通字符 {/literal} {php} echo '欧阳克'; {/php}9. 예
controller code
namespace appcontroller;
use thinkfacadeView;
class Index{
public function index(){
$title = 'Mall';
$login = '오우양 케';
~ ' => '제품 목록', ~ ~ ~ ~ > '제목'
'제목' => '사용자 주소',ㅋㅋㅋ '제목' => '주문 관리',
'제목' => '백엔드 관리', '목록' => '제목' => '관리자 목록', ~ . , " " 'id' => '열', ~ ~ 더베어 슬리브 살구 탑 후드 루즈한 자수 문예 드롭 슬리브 두꺼운 스웨트셔츠 BF 스타일', '고양이' => '여성 의류', '가격' => , '할인' >S 'STATUS' = & GT; // 'STATUS' = & GT; '공개', 'add_time' = & gt; '2019-12-12', // 'add_time' = & gt; ' 1576080000' 양면 모직 겨울 의류 2019 신형 여성 의류 기질 정장 칼라 대비 컬러 여성용 울 코트 재킷', '고양이' '여성의류', '가격' => ; 699, '할인' => 7, '상태' => 1,// '상태' => '추가_시간' => '2019-12- 12',
~ > > ’- ’ ’ s ’ s- 존재로,
'할인' 8. t '상태' = & GT 0, // '상태' = & GT; 'add_time' = > '1576080000' ], > 남성용 긴팔 티셔츠 가을 라운드 넥 흑백 티셔츠 단색상의 및 하의 셔츠 ','고양이' => '男装',
'가격' => 99,
'할인' => 9,
'상태' => 1,
// '상태' => '开启',
'추가_시간' => '2019-12-12',
// '추가_시간' => '1576080000'
],
];
보기::할당([
'title' => $title,
' 로그인' => $로그인,
'왼쪽' => 왼쪽,
'오른쪽' => $right
]);
return View::fetch();
}
}
view代码:head.html
<!DOCTYPE html> ;
<html>
<head>
<title>{$title}--后台管理系统</title>
<link rel="stylesheet" type="text/css " href="/static/layui/css/layui.css">
<script type="text/javascript" src="/static/layui/layui.js"></script>
<style type="text/css">
.header{width:100%;height: 50px;line-height: 50px; background: #2e6da4;color:#ffffff;}
.title{margin- 왼쪽: 20px;글꼴 크기: 20px;}
.userinfo{float: 오른쪽;여백-오른쪽: 10px;}
.userinfo a{color:#ffffff;}
.menu{너비: 200px;배경: #333744;위치:절대;}
.main{위치: 절대;왼쪽:200px;오른쪽:0px;}
.layui-collapse{경계: 없음;}
.layui-colla-item{ border-top:none;}
.layui-colla-title{배경:#42485b;color:#ffffff;}
.layui-colla-content{border-top:none;padding:0px;}
.content 범위{배경: #009688;margin-left: 30px;padding: 10px;color:#ffffff;}
.content div{border-bottom: solid 2px #009688;margin-top: 8px;}
.content 버튼{float: right;margin-top: -5px;}
</style>
</head>
<body>
<div class="header">
<span class="title"><span style="font-size: 20px;">{$title}</span>--后台管理系统</span>
<span class="userinfo">【{$login}】<span><a href="javascript:;">退출</a></span></span>
</ div>
view代码:left.html
<div class="menu" id="menu">
<div class="layui-collapse"lay-accordion>
{foreach $left as $k=>$left_v}
<div class="layui-colla-item">
<h2 class="layui-colla-title">{$left_v.title}< ;/h2>
<div class="layui-colla-content {if $k==0}layui-show{/if}">
<ul class="layui-navlayui-nav- tree">
{foreach $left_v['lists'] as $lists_v}
<li class="layui-nav-item"><a href="index.html"> $lists_v .title}</a></li>
{/foreach}
</ul>
</div>
{/foreach}
< /div>
</div>
view代码:bottom.html
</body>
</html>
<script>
layui.use(['element','layer','laypage' ], function(){
var element =layui.element;
varlaypage =layui.laypage;
$ =layui.jquery;
레이어 =layui.layer;
();
}) ;
// 새로 추가됨设置菜单容器 높이
function ResetMenuHeight(){
var height = document.documentElement.clientHeight - 50;
$('#menu').height(height) ;
}
</script>
view代码:index.html
{include file="public/head" /}
{include file="public/left" /}
<div class=" main" style="padding:10px;">
<div class="content">
<span>商product列表</span>
<div></div>
</div>
<번째>제품명< ;/th> ; t; ~ ~ | > $right_v.title}</td> gt; ;{$right_v.discount}</td> ~ else/}
<td>{$right_v.stock}</td>
<td>{if $right_v['status']==1}开启{else/}关闭{/if}< /td>
<td>{$right_v.add_time|date='Y-m-d'}</td>
</tr>
{/volist}
</tbody>
</ 테이블>
</div>
{include file="public/bottom" /}