koolreport/blade

允许 KoolReport 使用 blade 模板引擎来渲染视图

1.0.2 2024-09-04 09:10 UTC

This package is auto-updated.

Last update: 2024-09-20 07:26:43 UTC


README

概述

如果你使用过 Laravel 并且喜欢 Blade 模板引擎,那么你可以用这个你喜欢的模板引擎与 KoolReport 一起使用。从 4.0.0 版本开始,KoolReport 支持使用其他模板引擎,而不仅仅是自己的模板视图文件。

因此,通过使用 blade 模板引擎,你可以利用模板继承等能力,例如为你的报告创建通用布局。

Blade 不会限制你在视图中使用纯 PHP 代码。实际上,所有的 Blade 视图都被编译成纯 PHP 代码并缓存,直到它们被修改,这意味着 Blade 对你的报告几乎没有额外的开销。

安装

通过下载 .zip 文件

  1. 下载
  2. 解压 zip 文件
  3. blade 文件夹复制到 koolreport 文件夹中,使其看起来如下
koolreport
├── core
├── blade

通过 composer

composer require koolreport/blade

开始使用

步骤 1: 首先,你应该创建两个文件夹,第一个是 views 用于存放报告视图,第二个是 cache 文件夹,用于 blade 生成缓存文件。

project/
├── reports/
│   └── MyReport.php
├── views/
│   └── myreport.blade.php
├── cache/

步骤 2: 接着,在你的 MyReport.php 中,你可以这样初始化 blade 模板

require_once "../../koolreport/core/autoload.php";

class MyReport extends \koolreport\KoolReport
{
    use \koolreport\blade\Engine;
    
    protected function bladeInit()
    {
        $viewsFolder = __DIR__."/../views";
        $cacheFolder = __DIR__."/../cache";
        $blade = new \Jenssegers\Blade\Blade($viewsFolder, $cacheFolder);
        return $blade;
    }
    ...

}

步骤 3: 创建报告的视图内容。在你的 myreport.blade.php 中,你可以这样做

<html>
<head>
    <title>MyReport</title>
</head>
<body>
    <?php
    \koolreport\widgets\koolphp\Table::create(array(
        "dataSource"=>$report->dataStore("result"),
    ));
    ?>
</body>
</html>

重要提示: 你需要使用 $report 变量来引用报告类,而不是像使用默认 Koolreport 视图文件时那样使用 $this

步骤 4: 为了让报告运行并渲染,你需要这样做

//index.php

require_once "MyReport.php";

$report = new MyReport;
$report->run()->render("myreport"); // You need to specify the view you want to render

现在你的报告将运行,然后使用 myreport.blade.php 来渲染报告的视图。

恭喜!

资源

  1. 完整文档
  2. 示例与演示

支持

如果你需要支持,请使用 我们的论坛,这样其他人也能从中受益。如果支持请求需要隐私,你可以通过support@koolreport.com 发送电子邮件给我们。