imponeer / smarty-db-resource
Smarty 插件,增加 DB 资源类型
v3.0.6
2023-09-04 20:29 UTC
Requires
- php: ^7.3|^8.0
- ext-pdo: *
- imponeer/smarty-extensions-contracts: ^3.0
Requires (Dev)
- ext-sqlite3: *
- phpunit/phpunit: ^8.0 || ^9.0
README
Smarty 数据库资源
Smarty 资源插件,可从数据库读取模板。
此插件受 Xoops - resource.db 启发,但功能相似。
安装
要安装和使用此包,我们建议使用 Composer
composer require imponeer/smarty-db-resource
否则,您需要手动包含 src/
目录下的文件。
在 Smarty 中注册
如果您想在项目中使用此包中的扩展,您需要使用 registerResource
函数 从 Smarty 中注册它们。例如
$smarty = new \Smarty(); $plugin = new \Imponeer\Smarty\Extensions\DBResource\DBResource( $pdo, // PDO compatible database connection 'default', // current template set name 'tplfile', 'tpl_source', 'tpl_lastmodified', 'tpl_tplset', 'tpl_file', function (array $row): string { // function that converts database row info into string of real file return $row['file']; }, 'default' ); $smarty->registerResource($plugin->getName(), $plugin);
在模板中使用
要从模板中使用此资源,您需要在访问文件时使用 db:
前缀。例如
{include file="db:/images/image.tpl"}
如何贡献?
如果您想添加一些功能或修复错误,您可以分叉、更改并创建拉取请求。如果您不确定如何操作,请尝试 交互式 GitHub 教程。
如果您发现任何错误或有问题,请使用 问题标签 并在那里写下您的问题。