davidngugi/laravel-php-generator

命令行工具,用于生成您的类、接口和特性。旨在提高您的生产效率

v1.0.3 2018-02-14 14:29 UTC

This package is not auto-updated.

Last update: 2024-09-29 05:08:14 UTC


README

一个简单的命令行工具,用于生成您的Laravel类、接口和特性。旨在提高您的生产效率

安装

composer require davidngugi/laravel-php-generator

文档

此包允许您生成类、接口和特性。您可以生成扩展另一个类并实现接口的类。包根据指定的 -p 或路径选项生成必要的目录。否则将使用默认路径。

所有路径都指向 App 目录。所以不要在路径中使用 App。

以下子部分进一步解释了如何使用各种命令

注意:将花括号中的字符串替换为您自己的值

创建一个类

php artisan generate:class {class_name_here}

示例

php artisan generate:class Account

这将生成以下内容

<?php

namespace App\Logic;

class Account 
{
    //
}

包括路径。例如:Logic/Core

php artisan generate:class -p {path_here} {class_name_here}

您可以一次生成多个类

php artisan generate:class {class1_name_here} {class2_name_here} {class3_name_here}

创建并扩展一个类

我们使用 -e 或 --extend 选项。指定要扩展的类的名称。如果该类不存在,它也会被生成。您只能扩展一个类

php artisan generate:class -e {name_of_class_to_extend} {class_name_here}

示例

php artisan generate:class -e BankAccount CurrentAccount

这将生成以下 2 个文件

<?php

namespace App\Logic;

class BankAccount
{
    //
}
<?php

namespace App\Logic;

use App\Logic\BankAccount;

class CurrentAccount extends BankAccount
{
    //
}

生成一个类并实现一个接口

我们使用 -i 或 --interface 选项。指定要实现的接口的名称。

注意:接口名称应不包含结尾的 'Interface' 字样,这将被自动生成。您只能实现一个接口

php artisan generate:class -i{name_of_interface_to_extend} {class_name_here}

示例

php artisan generate:class -i Finance BankAccount

这将生成以下 2 个文件

一个接口

<?php

namespace App\Logic;

interface FinanceInterface
{
    //
}

和一个类

<?php

namespace App\Logic;

use App\Logic\FinanceInterface;

class BankAccount implements FinanceInterface
{
    //
}

创建并扩展一个类和实现一个接口

我们使用上述选项(-e 和 -i)。

php artisan generate:class -e {name_of_class_to_extend} -i  {class_name_here}

示例

php artisan generate:class -e BanckAccount -i Finance CurrentAccount

这将生成

<?php

namespace App\Logic;

use App\Logic\FinanceInterface;
use App\Logic\BankAccount;

class CurrentAccount extends BankAccount implements FinanceInterface
{
    //
}

注意:这些命令不会覆盖任何现有的文件或文件夹

创建一个接口

我们使用 generate:interface artisan 命令。这也支持 -p 或 --path 选项来指定目录路径。

App\Logic\Interfaces 是默认路径

php artisan generate:interface {interface_name}

示例

php artisan generate:interface Finance

这将生成以下内容

<?php

namespace App\Logic\Interfaces;

/**
*  FinanceInterface Interface
*/
interface FinanceInterface
{
    //
}

创建一个特性

我们使用 generate:trait artisan 命令。这也支持 -p 或 --path 选项来指定目录路径。

App\Logic\Traits 是默认路径

php artisan generate:trait {trait_name}

示例

php artisan generate:trait Transactable

这将生成以下内容

<?php

namespace App\Logic\Traits;

/**
*  Transactable Trait
*/
trait Transactable 
{
    //
}

贡献

所有贡献(无论大小)都热烈欢迎。发送一个 PR

作者

支持

如果您想支持该软件包的持续开发和维护,请考虑为我买杯咖啡。

许可

此软件包是开源软件,根据 MIT 许可 许可。