Ubuntu下使用 ThinkPHP 模板引擎的实用技巧
一 环境与配置要点
二 常用语法与高效写法
变量输出与控制:使用 {$var} 输出变量,配合过滤器如 |raw(不过滤)、|date、|upper 等;条件与循环分别用 {if}{/if}、{volist}{/volist} 或 {foreach}{/foreach};模板包含用 {include file=“public/header” /};布局与复用推荐 {extend}{block} 组合,便于统一页面结构与局部定制。
示例(以 ThinkPHP 5/6 常见用法为例):
namespace app\controller;
use app\BaseController;
class UserController extends BaseController
{
public function index()
{
$users = [
['id' => 1, 'name' => '张三', 'email' => 'zhangsan@example.com'],
['id' => 2, 'name' => '李四', 'email' => 'lisi@example.com'],
];
$this->assign('users', $users);
$this->assign('title', '用户列表');
// 开发环境可直接返回 fetch,由框架处理输出
return $this->fetch('user/index');
}
}
<!doctype html>
<html>
<head><title>{$title}</title></head>
<body>
<h1>{$title}</h1>
<ul>
{volist name="users" id="u"}
<li>ID: {$u.id} / 姓名: {$u.name} / 邮箱: {$u.email}</li>
{/volist}
</ul>
</body>
</html>
{$data.content|raw} {# 输出原始 HTML #}
{literal}var name = "{$name}";{/literal} {# 原样输出,避免与 {{}} 冲突 #}
{# layout.html #}
<!doctype html>
<html><head><title>{block name="title"}默认标题{/block}</title></head>
<body>{__CONTENT__}</body></html>
{# index.html #}
{extend name="layout" /}
{block name="title"}首页{/block}
{block name="content"}
<h2>首页内容</h2>
{include file="public/header" /}
{/block}
以上示例涵盖了变量输出、循环、包含、布局与过滤器等关键用法,适合在 Ubuntu 开发环境中直接套用。
三 调试与常见问题处理
四 性能与安全建议
五 扩展与替代方案