fruit/compilekit

该包的最新版本(0.2.18)没有提供许可信息。

用于为 Fruit 框架生成匿名类的辅助工具

0.2.18 2019-07-07 22:06 UTC

This package is auto-updated.

Last update: 2024-09-08 09:22:32 UTC


README

此包是 Fruit 框架的一部分,需要 PHP 7+。

CompileKit 是一组用于动态生成 PHP 代码的类。

概述

<?php

require('vendor/autoload.php');

use Fruit\CompileKit\AnonymousClass as C;
use Fruit\CompileKit\FunctionCall as Call;
use Fruit\CompileKit\Block;
use Fruit\CompileKit\Value;

$b = (new Block)
    ->reqOnce('vendor/autoload.php')
    ->space()
    ->use('PHPUnit\Framework\TestCase', 'TC')
    ->space();

$c = (new C)->extends('TC');
$c
    ->can('testExample')
    ->line('$this->assertTrue(true);');

$b->return(
    (new Call('var_export'))->arg($c)->arg(true)
);

echo '<?php' . "\n" . $b->render(true);

将打印

<?php
require_once(__DIR__ . '/vendor/autoload.php');

use PHPUnit\Framework\TestCase as TC;

return var_export(
    new class(
    ) extends TC
    {
        public function testExample()
        {
            $this->assertTrue(true);
        }
    },
    true
);

许可

MIT、GPL 或 LGPL 的任何版本。