glowieframework/skeltchgo

独立的 Skeltch 模板引擎,适用于 PHP

v1.0.3 2023-03-16 00:32 UTC

This package is auto-updated.

Last update: 2024-09-10 20:25:08 UTC


README

SkeltchGo

Latest Version Total Downloads License PHP Version

轻量级 PHP 模板引擎

SkeltchGo 是 Glowie Skeltch 模板引擎的独立版本,适用于 PHP,旨在在框架之外使用。

要求

  • PHP 版本 7.4 或更高
  • Composer 版本 2.0 或更高

安装

通过 Composer

composer require glowieframework/skeltchgo

用法

通过静态 make() 方法创建 SkeltchGo 实例。

// Include Composer autoloader
require_once('vendor/autoload.php');

// Setup SkeltchGo
use Glowie\SkeltchGo\SkeltchGo;
$skeltch = SkeltchGo::make();

此方法返回一个 ViewRenderer 实例。

make() 方法接受三个可选参数

  • viewFolder (字符串) - 存储视图文件的文件夹,相对于运行脚本。 (默认为 views)
  • cacheFolder (字符串) - 视图缓存文件夹,相对于运行脚本。 必须具有写入权限。 (默认为 cache)
  • cache (布尔值) - 启用视图缓存。在生产环境中强烈推荐。 (默认为 true)

渲染视图

视图必须是 views 文件夹内的 .phtml 文件。不需要扩展名。

从脚本中

$skeltch->renderView('myView');

从另一个视图

{ view('myView') }

渲染部分

要在一个私有范围内渲染视图,请使用部分。它们不会继承全局或父视图参数。

从脚本中

$skeltch->renderPartial('myView');

从另一个视图

{ partial('myView') }

渲染布局

布局必须是 views 文件夹内的 .phtml 文件。不需要扩展名。第二个参数是一个可选的视图文件,用于在布局中渲染。

从脚本中

$skeltch->renderLayout('myLayout', 'myView');

从另一个视图

{ layout('myLayout', 'myView') }

要检索布局内部的内部视图内容,请使用

{ content }

传递参数

有两种方法可以将参数传递给视图

// Globally to all views at once
$skeltch->view->myParam = 'Lorem ipsum';

// Restricted to a single view and its childs
$skeltch->renderView('myView', [
    'myParam' => 'Lorem ipsum'
]);

然后在视图中将其作为自身的属性检索

{{ $this->myParam }}

视图助手

通过将名称和闭包传递给 helper() 方法来设置助手方法

$skeltch->helper('sayHello', function($name){
    return "Hello, $name!";
});

然后在视图文件中使用它

{{ $this->sayHello('World') }}

文档

要了解如何使用所有方法和模板语法,请阅读 Skeltch 完整文档

注意:一些 Skeltch 方法仅限于框架环境,在 SkeltchGo 中不可用。

致谢

SkeltchGo 和 Glowie 目前由 Gabriel Silva 开发。