• open-php开源项目:php-code-generator PHP流行框架的curd的代码生成器


    php-code-generator

    介绍

    基于php的代码生成器

    测试环境

    php ^8.0

    支持范围

    目前仅支持laravel,后续会支持webman,thinkphp等,也欢迎提交模板

    composer

    composer require zx/php-code-generator
    

    使用方法

    1,代码生成器是基于渲染模板的方法,目前强调的是自定义的
    2,把vender/zx/php-code-generator/src/laravel/的三个文件复制public目录下
    3,因为每个人的代码习惯不同,所以可以根据模板适当修改,生成合适自己的代码
    4,每次生成前建议删除public的目录,然后吧生成好的代码复制到对应的项目文件下,直接生成在项目目录
    容易造成代码覆盖,所以推荐自己复制进去
    5,生成模板代码,在laravel容易的controller里面执行一下代码

    use ZXLaravelGenerator;
    use ZXMysqlOperation;
    
    class IndexOpenController extends BaseController
    {
        public function test(Request $request)
        {
            $param = [
                'type' => 'mysql',
                'host' => '127.0.0.1',
                'port' => '3306',
                'dbname' => 'mc',
                'charset' => 'utf8',
                'user' => 'root',
                'pwd' => 'root'
            ];
    
            MysqlOperation::setConnection($param);
            //根据数据库生成所有的表对应的代码模板
            LaravelGenerator::generatorAllTable();
            //生成admin单表的
            //LaravelGenerator::generatorTable('admin');
        }
    
    }
    
    

    6,文件会在public,根据自己需要复制代码文件

    7,如果你直接使用默认模板你可能需要一些辅助代码
    他们会在vender/zx/php-code-generator/src/laravel/utils里面
    composer.json里面加上

    "autoload": {
            "files": [
              "app/Utils/Function.php"
            ]
        }
    

    8,如果你不喜欢使用一些辅助代码,你可以把返回的代码改成

    return response()->json(['code' => 200, 'msg' => '成功']);
    

    这样标准laravel写法 ,代码检查也可以改成

    $where['weixin_phone'] = !empty($request->weixin_phone) ? (string)htmlspecialchars(trim($request->weixin_phone), ENT_QUOTES, "UTF-8") : '';
    

    自定义模板

    1,继承 ZXGenerator
    2,实现抽象方法,参照LaravelGenerator 的方法去实现自己的模板,通用的方法都有提供

    问题反馈

    QQ群:247823727
    博客:https://www.cnblogs.com/zx-admin/
    gitee:https://gitee.com/open-php/php-code-generator
    github:https://github.com/zh7314

    QQ群 247823727 博客文件如果不能下载请进群下载
    如果公司项目有技术瓶颈问题,如有需要,请联系我,提供技术服务 QQ: 903464207
  • 相关阅读:
    centos8 安装postresql12
    vs code 开启远程调试步骤
    node 版本管理器 nvs
    Vue I18n Vue.js 的国际化插件+elementUI的使用
    c#结构
    下拉菜单
    使用Convert 类和Parse方法将字符串转换为数值类型
    c# try..... catch
    c#迭代算法
    网页兼容各种浏览器
  • 原文地址:https://www.cnblogs.com/zx-admin/p/15015555.html
Copyright © 2020-2023  润新知