PHPackages                             mrjulio/rapture-generator - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. mrjulio/rapture-generator

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

mrjulio/rapture-generator
=========================

Rapture PHP generator component

v1.0.1(8y ago)014MITPHPPHP &gt;=7.0.4

Since Jun 15Pushed 8y agoCompare

[ Source](https://github.com/mrjulio/rapture-generator)[ Packagist](https://packagist.org/packages/mrjulio/rapture-generator)[ Docs](http://rapture.iuliann.ro)[ RSS](/packages/mrjulio-rapture-generator/feed)WikiDiscussions master Synced 2d ago

READMEChangelogDependenciesVersions (3)Used By (0)

Rapture PHP code Generator
==========================

[](#rapture-php-code-generator)

[![PhpVersion](https://camo.githubusercontent.com/e4c64a56977ee968a54eefdf914344ee00dc9a42c47755b9334cb4a862e57123/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7068702d372e302d6f72616e67652e7376673f7374796c653d666c61742d737175617265)](#)[![License](https://camo.githubusercontent.com/942e017bf0672002dd32a857c95d66f28c5900ab541838c6c664442516309c8a/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d626c75652e7376673f7374796c653d666c61742d737175617265)](#)

PHP code generator.

Requirements
------------

[](#requirements)

- PHP v7.0
- php-pcre

Install
-------

[](#install)

```
composer require mrjulio/rapture-generator

```

Quick start
-----------

[](#quick-start)

```
$class = new PhpClass('Test');
$class->setNamespace('Demo')
    ->setIsAbstract(true)
    ->setIsFinal(true)
    ->setExtends('\Rapture\Component\Definition\ClassAbstract')
    ->addImplements('\Rapture\Component\Definition\ClassInterface')
    ->addTrait('\Rapture\Component\Definition\ClassTrait')
    ->addConstant('status_on', 1)
    ->addConstant('status_off', 2)
    ->addProperty(new PhpProperty('status', 'self::STATUS_OFF', PhpMethod::KEYWORD_PROTECTED))
    ->addMethod(
        new PhpMethod(
            'setStatus',
            '$this->status = $status;' . "\n" . "\n" . 'return $this;',
            PhpMethod::KEYWORD_PUBLIC,
            [['status', 'int', 'self::STATUS_OFF']]
        )
    )
    ->setComment(new PhpComment(['Class Demo', '', '@see HelloWorld']));

file_put_contents('User.php', PhpRender::renderClass($class));
```

Result:

```
