bndrmrtn/flamephp_engine

该包的最新版本(dev-main)没有可用的许可证信息。

放弃旧的PHP <?= 语法并永远不再使用它,解决方案是 *.flame.php,它将 {{ $title }} 转换为 <?php echo $title ?> 和 @foreach(...) ... @endforeach 转换为 <?php foreach(...): ?> ... <?php endforeach ?>,因此使用 flamephp_engine 进行UI开发不再痛苦。

dev-main 2023-11-14 11:54 UTC

This package is auto-updated.

Last update: 2024-09-14 13:28:50 UTC


README

如何添加到项目中?

通过 composer 安装并添加到文件中。

composer require bndrmrtn/flamephp_engine:dev-main
require_once 'vendor/autoload.php';

配置或使用默认配置

use Bndrmrtn\FlamephpEngine\FlamePHP;
use Bndrmrtn\FlamephpEngine\FlamePHP\Config;

$flame = new FlamePHP(
     viewsDirectory: '...', // The directory where you store your views
     useDevelopmentMode: true, // Your project is in development mode or not
     cacheDirectory: '...',  // The directory where you want to store your cache data
     config: new Config, // Custom config, or use the default
);

如何使用它?

您可以使用根目录中名为 views 的目录中的 *.flame.php 文件,或者不需要任何文件的 parseString 选项。 (除了由该工具自动生成的缓存文件外)。

代码示例

使用 textParser 选项

use Bndrmrtn\FlamephpEngine\FlamePHP;

$flame = new FlamePHP;

$flame->parseString('
     <h1>Hello {{ $world }}</h1>
', ['world' => 'Developer'],
);

// <h1>Hello Developer</h1>

使用文件选项

// ...
$flame->includeFile(
     'filename', // without the .flame.php extension!
     ['name' => 'John'] // add props to it
);

实际上,您可以通过 parseFile 方法获取文件的缓存路径,如下所示

// ...

$parsed_file = $flame->parseFile(
     'filename', // without the .flame.php extension!
     // No props here
);

echo $parsed_file; // output: C:\...\your_project\flamephp_engine\cache\views\filename.flame.php

演示

您可以通过检查 /tests 目录并使用 PHPUnit 运行测试来检查。

文档

在此 FlameCore 官方视图文档 中,您可以找到关于其工作方式的简要文档,但我要提醒您,这记录了一个修改后的版本,您应该遵循上述描述的默认设置!

致谢

Martin Binder,全栈 Web 开发者,有4年的 PHP 经验,3年的 Laravel 经验。目前我正在学习 GoLang ;)