varimax/app

varimax 应用程序

维护者

详细信息

github.com/dcto/app

源代码

问题

安装: 25

依赖: 0

建议: 2

安全: 0

星标: 0

关注者: 3

分支: 0

公开问题: 0

类型:application

v3.2 2024-08-17 07:59 UTC

This package is auto-updated.

Last update: 2024-09-06 02:14:48 UTC


README

  • 主页: http://www.varimax.cn
  • 源代码: https://github.com/dcto/app
  • 问题: https://github.com/dcto/app/issues
  • 许可证: MIT
  • IRC: #varimax/app 在 freenode

    License PHP version Latest Stable Version Total Downloads

    开始 安装

    composer create-project varimax/app
    

    开发环境

    将 .env 文件拖到根目录

    内容示例如下

    ENV=dev
    DEBUG=2
    

    ENV 将加载配置目录 config {ENV}.name

    关于 DEBUG 选项项 1 与 2

    选择 1 将输出不带错误代码详细信息的错误消息

    选择 2 将向客户端输出详细的代码异常消息

    路由器

    varimax 定义了一些默认路由规则

    ':*'    =>  ':.+',
    ':str'  =>  ':[\w-]+',
    ':int'  =>  ':[1-9]\d+',
    ':num'  =>  ':[0-9.-]+',
    ':any'  =>  ':[\w!@$^&+-=|]+',
    ':hex'  =>  ':[a-f0-9]+',
    ':hash' =>  ':[a-z0-9]+',
    ':uuid' =>  ':[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
    

    RESTful API 风格

    Method     |  Path                |  Action   |
    ------------------------------------------------
    GET        |  /test               |  index    |
    GET        |  /test/(:id)         |  select   |
    POST       |  /test/create        |  create   |
    PUT/PATCH  |  /test/update/(:id)  |  update   |
    DELETE     |  /test/delete/(:id)  |  delete   |
    

    路由

    <?php
    //公共组
    Router::group( ['id' => 'public', 'prefix' => '/', 'namespace' => 'App\Controller'], function () {  
        Router::any('/', 'Index@index');
        Router::any('/test')->call('Test@index');
        Router::any('/test/(list:*)/(id:\d+)' )->call('Test@test' );
        Router::get('/test/(shop:vip|user)' )->call('Test@shop' ); //only allow vip or user string
        Router::get('/test/(shop:vip|user)/(id:|\d+)' )->call('Test@shop' );
    });
    
    
    /**
     * 验证组
     * @param id 组id
     * @param prefix 组前缀
     * @param namespace 组命名空间
     * @param pipeline 组中间件
     */
    Router::group( ['id' => 'permit', 'prefix' => '/', 'namespace' => 'App\Controller', 'pipeline' => [\App\Pipeline\Auth::class,\App\Pipeline\Cors::class]], function () {    
       
        //首页
        Router::get('/home')->call('Home@index');
        
        /**
         * 会员中心
         * name: 组名称
         * prefix: 当以/开头表示覆盖前缀,否则继承
         * namespace: 当以\开头表示覆盖命名空间前缀,否则继承
         */
        Router::group(['name'=>'user', 'prefix'=>'/user', 'namespace'=>'User', 'pipeline'=>'App\Pipeline\User'], function(){
            Router::get('/list')->call('User@index');
            Router::any('/create')->call('User@create');
            Router::any('/update')->call('User@update');
            Router::any('/delete')->call('User@delete');
        });
    } ); 
    

    Varimax 命令

    获取 vmc 命令目的地

    composer vmc

    启动开发服务器 https://:8620

    composer dev

    PHPUnit 测试代码

    composer test

    php-cs-fixer 修正为有效代码

    compsoer 检查

    启动生产环境下的 web 服务器

    composer start [application = app]

    应用程序命令

    创建新控制器

    composer app make:controller controllerName

    创建新模型

    composer app make:model modelName

    创建新管道

    composer app make:pipeline pipelineName

    创建新服务

    composer app make:service serviceName

    模型命令

    从模型模式方法创建数据库表

    composer vmc model:schema modelName

    关于开发者

    姓名:D.C (陶之11)