public function generate(string $path, string $namespace, string $name)
    {
        $name = $this->camelize($name);

        $vars = [
            'NAMESPACE'       => $namespace,
            'NAME'            => $name,
            'NAME:CAMELIZED'  => $name,
            'NAME:UNDERSCORE' => $this->underscore($name),
            'NAME:UPPERCASE'  => strtoupper($name),
        ];

        $this->put('/Models/Model.php.stub', $path.'/Models/'.$name.'.php', $vars);
        $this->put('/Managers/Manager.php.stub', $path.'/Managers/'.$name.'Manager.php', $vars);
        $this->put('/Schemas/Schema.php.stub', $path.'/Schemas/'.$name.'Schema.php', $vars);
        $this->put('/Repositories/Repository.php.stub', $path.'/Repositories/'.$name.'Repository.php', $vars);
        $this->put('/Validators/Validator.php.stub', $path.'/Validators/'.$name.'Validator.php', $vars);
        $this->put('/Serializers/Serializer.php.stub', $path.'/Serializers/'.$name.'Serializer.php', $vars);
        $this->put('/Authorizers/Authorizer.php.stub', $path.'/Authorizers/'.$name.'Authorizer.php', $vars);
        $this->put('/Fakers/Faker.php.stub', $path.'/Fakers/'.$name.'Faker.php', $vars);
    }
public function generate(string $path, string $namespace, string $name)
    {
        $name = $this->camelize($name);

        $vars = [
            'NAMESPACE'       => $namespace,
            'NAME'            => $name,
            'NAME:CAMELIZED'  => $name,
            'NAME:UNDERSCORE' => $this->underscore($name),
            'NAME:UPPERCASE'  => strtoupper($name),
        ];

        $this->put('/Models/Model.php.stub', $path.'/Models/'.$name.'.php', $vars);
        $this->put('/Managers/Manager.php.stub', $path.'/Managers/'.$name.'Manager.php', $vars);
        $this->put('/Schemas/Schema.php.stub', $path.'/Schemas/'.$name.'Schema.php', $vars);
        $this->put('/Repositories/Repository.php.stub', $path.'/Repositories/'.$name.'Repository.php', $vars);
        $this->put('/Validators/Validator.php.stub', $path.'/Validators/'.$name.'Validator.php', $vars);
        $this->put('/Serializers/Serializer.php.stub', $path.'/Serializers/'.$name.'Serializer.php', $vars);
        $this->put('/Authorizers/Authorizer.php.stub', $path.'/Authorizers/'.$name.'Authorizer.php', $vars);
        $this->put('/Fakers/Faker.php.stub', $path.'/Fakers/'.$name.'Faker.php', $vars);
    }
public function generate ( string $ path , string $ namespace , string $ name ) { $ name = $ this -> camelize ( $ name ) ; $ vars = [ 'NAMESPACE' => $ namespace , 'NAME' => $ name , 'NAME:CAMELIZED' => $ name , 'NAME:UNDERSCORE' => $ this -> underscore ( $ name ) , 'NAME:UPPERCASE' => strtoupper ( $ name ) , ] ; $ this -> put ( '/Models/Model.php.stub' , $ path . '/Models/' . $ name . '.php' , $ vars ) ; $ this -> put ( '/Managers/Manager.php.stub' , $ path . '/Managers/' . $ name . 'Manager.php' , $ vars ) ; $ this -> put ( '/Schemas/Schema.php.stub' , $ path . '/Schemas/' . $ name . 'Schema.php' , $ vars ) ; $ this -> put ( '/Repositories/Repository.php.stub' , $ path . '/Repositories/' . $ name . 'Repository.php' , $ vars ) ; $ this -> put ( '/Validators/Validator.php.stub' , $ path . '/Validators/' . $ name . 'Validator.php' , $ vars ) ; $ this -> put ( '/Serializers/Serializer.php.stub' , $ path . '/Serializers/' . $ name . 'Serializer.php' , $ vars ) ; $ this -> put ( '/Authorizers/Authorizer.php.stub' , $ path . '/Authorizers/' . $ name . 'Authorizer.php' , $ vars ) ; $ this -> put ( '/Fakers/Faker.php.stub' , $ path . '/Fakers/' . $ name . 'Faker.php' , $ vars ) ; }
Generate a new ModelStructure folder.

@param string $path
@param string $namespace
@param string $name
Generate a new ModelStructure folder .