nongbit / codeigniter-twig
将 Twig 集成到 CodeIgniter 4
1.0.0
2024-01-05 12:18 UTC
Requires
- codeigniter4/framework: ^4.0
- twig/intl-extra: ^3.7
- twig/twig: ^3.7
README
将 Twig 集成到 CodeIgniter 4。
设置
使用 composer 下载包。
composer require nongbit/codeigniter-twig
打开 APPPATH/Controllers/BaseController.php
。
use Nongbit\Twig\Traits\Twig; abstract class BaseController extends Controller { use Twig; ... public function initController(...) { ... $this->initTwig(); } }
使用方法
模板
要显示模板,我们可以使用 trait 提供的 display()
。
$this->display('hello', ['title' => 'Acme'])
默认情况下,Twig 将在 APPPATH/Views
内部查找模板文件。要添加其他位置,请使用 addPath()
。
$this->twig->addPath(ROOTPATH . 'templates');
默认文件扩展名是 html
,但我们可以通过创建配置文件 App\Config\Twig.php
来更改它。
namespace Config; use CodeIgniter\Config\BaseConfig; class Twig extends BaseConfig { public string $fileExtension = 'twig'; }
全局
$this->twig->addGlobals('title', 'Acme'); $this->twig->addGlobals(['title' => 'Acme']);
在视图内部
{{ title }}
过滤器
$this->twig->addFilters('rot13', 'rot13'); $this->twig->addFilters('rot13', function($string) { return str_rot13($string); }); $this->twig->addFitlers(['rot13']);
在视图内部
{{ 'Twig'|rot13 }}
函数
函数的行为与过滤器类似。