IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> PHP知识库 -> 03-thinkphp联动前端视图等配置 -> 正文阅读

[PHP知识库]03-thinkphp联动前端视图等配置

视图

视图类(后端对前端数据的渲染,实现区别对待vip)
use think\View;

解决think not support问题
cd tp6
composer require topthink/think-view

视图类的使用:(渲染前端)
在app目录下创建view目录,在view下建立路由路径,文件夹名为控制器名,函数名为文件名
在控制器中,使用视图
use think\View;

//表示初始化视图,assign将后端数据渲染到前端,fetch作为钩子钩住需要渲染的前端页面
public function user(View $view){
$test1=“haha this is test1”;
//前端的t1变量对应后端的test1变量
v i e w ? > a s s i g n ( ′ t 1 ′ , view->assign('t1', view?>assign(t1,$test1);
//使用user.html模板
return $view->fetch(‘user’);
}

//传输数组数据,前端要指定对象{$res[‘a1’]}
$res=[‘a1’=>‘xiaoming’,‘b1’=>‘xiaohong’];
v i e w ? > a s s i g n ( ′ r e s ′ , view->assign('res', view?>assign(res,res);

//传输数据库数据
使用参数承接数据库获取的数据,然后进行渲染

view里html直接可以使用(前端提供参数,前端显示)
获取get值
1、{KaTeX parse error: Expected 'EOF', got '}' at position 13: _GET['name']}? 2、{Request.get.id}
访问xxx.com/u1?name=xiaoli

如果需要混编
require ‘1.php’;
默认调用public目录下的指定php文件(可能出现文件包含漏洞,不建议使用)

前端函数

模板输出
{$t1|default=‘没有东西’}

数据进行md5加密(32位)
{$t1|md5}

把数据的html标签解析(可能出现xss漏洞)
{$t1|raw}

时间戳转化为日期(常用unix)
{$t1|date=‘Y-m-d H : m : s’}

裁剪字符(小说限看)
{$t1 | substr=0,3}
(从第几位开始,剪裁几个字符)

前端进行简单加减乘除
{$num1 + $num2}

省略多少位
{$t1|number_format=2}

前端流程控制

对数据库显示数据进行优化
foreach(自增遍历,$key作为下标)
{foreach $value as k e y = > key=> key=>value}
{KaTeX parse error: Expected 'EOF', got '}' at position 12: value['id']}?------{value[‘username’]}----{$value[‘password’]}

{/foreach}

volist(可以指定显示数据条数,从后端拿到指定name,把res里的每个值变成value进行提取)
{volist name=“res” id=“value”}

{KaTeX parse error: Expected 'EOF', got '}' at position 18: …lue['username']}?----{value[‘password’]}


{/volist}

可以指定显示多个
{volist name=“res” id=“value” offset=“2” length=“3”}

{KaTeX parse error: Expected 'EOF', got '}' at position 18: …lue["username"]}?---{value[“password”]}


{/volist}

只取出偶数的数据
{volist name=“res” id=“value” mod=“2”}
{eq name=“mod” value=“1”}

{KaTeX parse error: Expected 'EOF', got '}' at position 18: …lue["username"]}?---{value[“password”]}


{/eq}
{/volist}


if 条件判断

遍历之后,只能显示id<3的数据
{volist name=“res” id=“value”}
{if (KaTeX parse error: Expected 'EOF', got '}' at position 12: value.id<3)}? <p>{value[“username”]}—{$value[“password”]}


{/if}
{/volist}

{if $age<15}
年龄小于15
{elseif $age>15 AND $age<18}
年龄大于15小于18
{else}
成年
{/if}

for循环
{for start=“1” end=“100” name=“i” step=“2”}
{$i}

{/for}

是否相等
{eq name=“$user” value=“vip”}
你是vip
{else/}
你不是vip
{/eq}

Switch操作
{switch $user}
{case 1|2|3}
你是1-3用户
{/case}
{case 4|5}
你是4-5用户
{/case}
{default/}
no
{/switch}

是否存在
{in name=“$user” value=“1,2,3”}
yes
{/in}

插入php代码
{php}…{/php}

自我小测

1、如何引入视图库?简述如何解决think not support问题?
2、如何布置视图?(文件夹及文件命名规则)
3、简述assign、fetch函数功能?
4、简述如何执行以下操作?
输出数组指定对象、后端传参、前端传参、混编需求、默认输出、md5加密、标签解析、日期转化、裁剪字符、基础运算、保留位数
5、简述以下前端流程控制的相关操作?
数据库显示优化、if条件判断、foreach循环、eq相等判断、switch操作、存在判断、插入php代码

作者说与今日小图

在这里插入图片描述

  PHP知识库 最新文章
Laravel 下实现 Google 2fa 验证
UUCTF WP
DASCTF10月 web
XAMPP任意命令执行提升权限漏洞(CVE-2020-
[GYCTF2020]Easyphp
iwebsec靶场 代码执行关卡通关笔记
多个线程同步执行,多个线程依次执行,多个
php 没事记录下常用方法 (TP5.1)
php之jwt
2021-09-18
上一篇文章      下一篇文章      查看所有文章
加:2022-09-21 00:07:30  更:2022-09-21 00:08:02 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/5 6:13:46-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码