jaguarjack/file-generate 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

jaguarjack/file-generate

Composer 安装命令:

composer require jaguarjack/file-generate

包简介

file-generate help you generate php file template

README 文档

README

目的

支持不同项目生成不同的模版文件。

支持

  • namespace
  • 类方法
  • 类属性
  • 类静态属性
  • 异常捕获
  • 方法调用
  • 变量定义

类型

  • Array
  • Int
  • Float|Double
  • Null
  • Boolen
  • String

操作符

  • 大于|大于等于
  • 小于|小于等于
  • 加减乘除
  • 连接字符
  • 等于比较|恒等比较
  • 不等于比较|恒不等于比较
  • 取余
  • ?? 三元操作

example

use JaguarJack\Generate\Generator;
use JaguarJack\Generate\Build\Class_;
use JaguarJack\Generate\Build\Property;
use JaguarJack\Generate\Build\ClassMethod;
use JaguarJack\Generate\Build\Params;

Generator::namespace('App\Http\Controllers')
    ->uses([
        'App\Exceptions\FailedException',
        'App\Libary\Tools'
    ])
    ->class('Test', function (Class_ $class, Generator $generator){
        $class->extend('Good');

        $generator->property('show', function (Property $property){
            return $property->makePublic()->setDefault(true);
        });

        $generator->property('done', function ($property){
            return $property->makePublic();
        });

        $generator->method('test', function (ClassMethod $method,  Generator $generator){
            return $method->makePublic()->body([
                $generator->call('name', [
                    $generator->staticMethodCall('name'),
                    'a',Params::name('b')->makeByRef()
                    ])
                    ->call('get')
                    ->call('hello')->call()
            ])->return();
        });

        $generator->const('name', 'Jack');

        $generator->traits([
            'OptionsTrait'
        ]);

    })->file('test');

result

namespace App\Http\Controllers;

use App\Exceptions\FailedException;
use App\Libary\Tools;
use OptionsTrait;

class Test extends Good
{
    use OptionsTrait;
    const NAME = 'Jack';
    
    public $show = true;
    
    public $done;
    
    /**
     *
     * @time 2021/06/06 09:54
     * @return mixed
     */
    public function test()
    {
        return $this->name(self::name(), $a, &$b)->get()->hello();
    }
}

统计信息

  • 总下载量: 13.55k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2021-06-06