PHP:ThinkPHP使用Twig渲染html

简介: PHP:ThinkPHP使用Twig渲染html

此文是单独使用Twig渲染html的方法,用于邮件模板渲染。


如果需要整合到ThinkPHP渲染视图层的模板引擎,可参看

ThinkPHP6.0使用twig作为模板引擎及自定义过滤器


文档:


https://twig.symfony.com/doc/3.x/intro.html

安装

composer require "twig/twig:^3.0"

代码示例


<?php
namespace app\service;
use Twig\Environment;
use Twig\Loader\FilesystemLoader;
class TemplateService
{
    // 配置模板文件目录: app/template
    private static $template_dir = 'template';
    public static function render($name, array $context = [])
    {
        // 获取应用基础目录
        $absolute_template_dir = app()->getBasePath() . self::$template_dir;
        $loader = new FilesystemLoader($absolute_template_dir);
        $twig = new Environment($loader);
        return $twig->render($name, $context);
    }
}

测试


<?php
require_once __DIR__ . '/../../vendor/autoload.php';
((new \think\App())->http)->run();
use app\service\TemplateService;
use PHPUnit\Framework\TestCase;
class TemplateServiceTest extends TestCase
{
    /**
     * @doesNotPerformAssertions
     */
    public function testRender()
    {
        echo TemplateService::render('index.html', ['name'=> 'Tom']);
    }
}

模板文件:app/template/index.html

<!DOCTYPE html>
<html lang="en">
<body>
    {{name}}
</body>
</html>

输出结果


<!DOCTYPE html>
<html lang="en">
<body>
    Tom
</body>
</html>

相关文章
|
3月前
|
存储 安全 JavaScript
如何安全的渲染HTML字符串?
如何安全的渲染HTML字符串?
|
11天前
|
PHP
web简易开发——通过php与HTML+css+mysql实现用户的登录,注册
web简易开发——通过php与HTML+css+mysql实现用户的登录,注册
|
1月前
|
数据采集 存储 JavaScript
PHP爬虫技术:利用simple_html_dom库分析汽车之家电动车参数
本文旨在介绍如何利用PHP中的simple_html_dom库结合爬虫代理IP技术来高效采集和分析汽车之家网站的电动车参数。通过实际示例和详细说明,读者将了解如何实现数据分析和爬虫技术的结合应用,从而更好地理解和应用相关技术。
PHP爬虫技术:利用simple_html_dom库分析汽车之家电动车参数
|
2月前
|
前端开发 JavaScript 安全
react如何渲染包含html标签元素的字符串
react如何渲染包含html标签元素的字符串
58 0
|
3月前
|
Shell PHP
php案例:截取sy.66969.cn/sh.html中的sh怎么做?
php案例:截取sy.66969.cn/sh.html中的sh怎么做?
php案例:截取sy.66969.cn/sh.html中的sh怎么做?
|
3月前
|
存储 移动开发 前端开发
(2)需要的html典例以及PHP基础
(2)需要的html典例以及PHP基础
34 0
(2)需要的html典例以及PHP基础
|
4月前
|
数据采集 监控 JavaScript
巧用简单工具:PHP使用simple_html_dom库助你轻松爬取JD.com
本文将介绍如何使用PHP语言和一个简单的第三方库simple_html_dom来爬取JD.com的商品信息。simple_html_dom是一个轻量级的HTML解析器,它可以方便地从HTML文档中提取元素和属性,而无需使用正则表达式或DOM操作。本文将通过一个实例来展示如何使用simple_html_dom库来爬取JD.com的商品名称、价格、评分和评论数,并将结果保存到CSV文件中。本文还将介绍如何使用代理IP技术来避免被目标网站封禁或限制。
巧用简单工具:PHP使用simple_html_dom库助你轻松爬取JD.com
|
4月前
|
PHP
【PHP学习】—PHP文件嵌套HTML(四)
【PHP学习】—PHP文件嵌套HTML(四)
|
7月前
|
关系型数据库 MySQL PHP
PHP 原生操作 Mysql
PHP 原生操作 Mysql
81 0
|
7月前
|
关系型数据库 MySQL 数据库连接
PHP 原生连接 Mysql
PHP 原生连接 Mysql
107 0