検索
  • サインイン
  • サインアップ
パスワードのリセットが成功しました

興味のあるプロジェクトをフォローし、それらに関する最新ニュースをチェックしてください

ThinkPHP6.0ビュー

コレクション 501
リーディング 181513
更新時間 2016-09-11


ThinkPHP6 View

  • テンプレート エンジンは、通常のタグXML タグの 2 つの方法をサポートしています。タグの定義。それぞれ異なる目的に使用されます。

タグの種類説明
通常のタグ は主に変数の出力、関数のフィルタリング、およびいくつかの基本的な操作を行うために使用されます
XML タグ はタグ ライブラリ タグとも呼ばれます。主に論理的な判断、制御、ループ出力を完了し、拡張可能です。

1. 演算子

##包括的な演算{$a $b*10 $c}##三項演算子
演算子
{$a $b}
- { $a-$b}
*{$a*$b}
#/ {$a/$b}
%{$a%$b}
{$a } または { $a}
--{$a--} または {--$a}
{$a ==$b ? 'はい・いいえ'}############

コントローラファイル

パブリック関数index(){

View::assign('a',100);

View::assign(' 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 ? '存在します' : 'いいえExists'}</div>

2. テンプレート関数

#date日付の書式設定 (さまざまな時刻タイプをサポート)format文字列の書式設定upper大文字に変換下位小文字に変換##first配列の最初の要素を出力しますlast配列の最後の要素を出力しますデフォルトデフォルト値raw(デフォルト)エスケープを使用しない md5md5 暗号化substrインターセプト文字列
  • 複数の関数を呼び出すことができます

コントローラー ファイル

パブリック関数 Index(){

表示: :assign('time',1576048640);

View::assign('num',10.0032);

View::assign('str','OUyangKE');

View::assign('arr',[

'朱さん',

'欧陽柯',

'西門大関人'

]);

return View::fetch();

}

ファイルを表示

< div> ;{$time|date='Y-m-d H:i:s'}</div>

<div>{$num|format=' d'}</div>

<div>{$str|upper}</div>

<div>{$str| lower}</div>

<div> {$ arr|first}</div>

<div>{$arr|last}</div>

<div>{$default|default="欧陽グラム" }</div>

<div>{$str|substr=0,3}</div>

<div>{$str|md5}</ div>

<div>{$str| lower|substr=0,3}</div>

3. ループタグ

  • foreach タグの使用法は、配列またはオブジェクトのプロパティをループするために使用される PHP 構文に非常に似ています

コントローラーファイル

public function index(){

$ arr = [

=&gt; 'ouyang ke'

]、

'id' => 'name' => '朱先生 '

],

'id' => 3,

'name' => '西门大官人'

]

];

View::assign('arr',$arr);

return View::fetch();

}

view file

{foreach $arr as $v}

< div>

<スパン>ID:{$v['id']}</span>

<スパン>名前: {$v['name']}< ;/span>

</div>;

{/foreach}

4. Volist ループ タグ

  • 2 次元配列の結果出力

  • name テンプレートによって割り当てられた変数名

  • id ​​現在のループ変数には任意の名前を付けることができます

  • key 1 から始まる添え字 開始、デフォルト変数 i

  • offset 開始行番号

  • length get 行番号

  • empty データが空の場合は、このテキストを表示します。

view file

{volist name="arr" id="v" key ="k" offset= "1" length="2"}

<div>

<span>ID: {$v['id']}</span> ;

# <span>名前: {$v['name']}</span>

;/div>

{/volist}

5. if 判定タグ

    if
  • タグの使い方 PHP の構文に非常に近く、条件判定に使用されます

    ##コントローラー ファイル

パブリック関数 Index(){

View::assign( 'status',1);

View::assign( 'order_status',4);

return View::fetch();

}

ファイルを表示

{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}

6. 判定タグの切り替え

switch

タグの使用法と PHP 構文は非常に似ており、条件判断に使用されます

  • ファイルを表示

    {switch $ order_status}
{case 0}<div>未払い</div>{/case}

{case 1}<div>支払い済みの保留中の配送</div>{/case}

{ケース 2 }

{ケース 4}<div>完了</div>{/case}

{/switch}

7. ファイルをインクルードします

  • include タグ、インポートテンプレートファイル

  • タグを読み込み、リソースファイル (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" /}

8. その他のタグ

1. 条件付きタグ

メソッド説明
#タグinnotinbetween notbetween present notpresent 空 notempty define #未定義 #

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. タグの比較

説明
変数に特定の値があるかどうかを判断する
特定の値を持つ変数が存在しないかどうかを判断する
特定の値を持つ変数が存在するかどうかを判断する
変数が特定の範囲の値に存在しないかどうかを判断します
変数が定義されているかどうかを判断します
変数が未定義かどうかを判断します
変数が未定義であるかどうかを判断する Is empty
変数が空でないかどうかを判断する
変数が空かどうかの判定 定数が定義されているかどうかの判定
定数が未定義かどうかの判定
##TagDescriptioneq は neq と等しくない は gt と等しくない## より大きい #egt lt #elt 以下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 と等しいとは限りません。ループ タグ
以上 ## より小さい
##nheq

##タグ

説明forカウントループstart: 開始値
  • end: 終了値

  • step: ステップ値、デフォルト 1

  • name: ループ変数名、デフォルト i

  • {for start="1" end="50" step="5" name="i"}
        {$i}<br/>
    {/for}
  • 4、その他のタグ

##Tag

説明
リテラルそのまま出力
php ネイティブphpコードを使用# ##################################
{literal}
    {$name} 这里$name不会被当作变量,而是普通字符
    {/literal}
    {php}
    echo '欧阳克';
    {/php}

9. 例

コントローラー コード

名前空間 app\controller;

use think\facade\View;

class Index {

public functionindex(){

$title = 'Mall';

$login = '欧陽柯';

$left = [

[

# 'タイトル' = & GT; '製品管理',

'リスト 'id' => 1,

'id' = & gt; 2,

'タイトル' = & gt; '商品分類',

/

##]

##],

## [

'タイトル' = & gt; 'ユーザー管理',

'リスト' = & gt; [

[

'ID' = & gt; 3、

# 'id' =&gt; 4、

'title' =&gt; title '=&gt;'ユーザーアドレス '、

to gt; 'Order Management'、

]

;]、#

##]、

##[

# ' id '=&gt; 9、

' title '=&gt;

## > 6,

'status' =&gt; 1、

## // 'status' =&gt;

### 'title' =&gt; 'qiushui yiren両面ウール冬服2019 New Women's服の気質 スーツの襟 対照的な色のウール コート ジャケット 女性用',

'猫' => '婦人服',

'価格' => 699,

'割引' => 7,

'ステータス' => 1,

// 'ステータス' => 'オープン',

'add_time' = > '2019-12-12',

out out out through out through '''''-'''-‐‐‐ps' ',

## [

'ID' = & GT; 3,

## 'タイトル' = & GT; '猫' => '紳士服',

'価格' => ; 179,

'割引' => 8,

'ステータス' => 0; '= & gt;' 1576080000 '

],

[

' ID '= & GT; 1,

##' Title '= & GT; 長袖Tシャツ、秋物ラウンドネック、白黒Tシャツ、無地カラートップス、ボトムシャツ',

'猫' => '男装',

'price' => 99,

'割引' => 9,

'ステータス' => 1,

// 'ステータス' => '开启',

'add_time' => '2019-12-12',

// 'add_time' => '1576080000'

],

];

View::assign([

'title' => $title,

'login' => $login,

'left' => $left,

'right' => $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-left: 20px;font-size: 20px; }

.userinfo{float: right;margin-right: 10px;}

.userinfo a{color:#ffffff;}

.menu{width: 200px;背景:#333744;位置:絶対;}

.main{位置: 絶対;左:200px;右:0px;}


.layui-崩壊{border: none;}

.layui-colla-item{border-top:none;}

.layui-colla-title{background:#42485b;color:#ffffff; }

.layui-colla-content{border-top:none;padding:0px;}


.content span{background: #009688;margin -left: 30px;padding: 10px;color:#ffffff;}

.content div{border-bottom: Solid 2px #009688;margin-top: 8px;}

.content button{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>

</div>

{/foreach}

< /div>

;

表示番号:bottom.html

</body>

</html>

<script>

layui.use(['element','layer','laypage'], function(){

var element =layui.element;

varlaypage =layui.laypage;

$ =layui.jquery;

layer =layui.layer;

resetMenuHeight();

}) ;

// 再設置菜单容器の高さ

function replaceMenuHeight(){

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>商品列表</span>

<div> ;</div>

</div>

#;/th&gt;

#/th&gt;

#;

####&lt; td&gt; {$ right_v .cat}&lt;/td&gt;

#カウント/10)}

&lt;/td&gt;

<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>

</table>

</div>

{include file=" public/bottom" /}




ホットAIツール
Undress AI Tool
Undress AI Tool

脱衣画像を無料で

AI Clothes Remover
AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undresser.AI Undress
Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

Stock Market GPT
Stock Market GPT

AIを活用した投資調査により賢明な意思決定を実現

人気のツール
メモ帳++7.3.1
メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版
SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6
ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版
SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)