Skip to content

PHP library for handling strict type class variables (not yet working)

License

Notifications You must be signed in to change notification settings

imponeer/properties

Repository files navigation

License GitHub release Build Status Packagist Maintainability Test Coverage

Properties

PHP library for handling strict type class variables. This package can be used only for adding functionality for other classes.

Installation

composer require imponeer/properties

Usage

To add some custom properties support to a class first you need to extend that class. Here is example how to do it:

use Imponeer\Properties;

class Base extends Properties {

}

Next thing what you need is to define variables in class constructor. Here an example how to do:

use Imponeer\Properties;

class Base extends Properties {

  public function __construct() {
    $this->initVar('varA', self::DTYPE_INTEGER, null, false);
    $this->initVar('varB', self::DTYPE_STRING, null, true, 150);
    $this->initVar('varC', self::DTYPE_INTEGER, 100, false);
  }
}

Than is possible to use such vars. This would work for previous example in such way:

// Creates instance
$obj = new Base();

// Print current objects vars
var_dump($obj->toArray());

// Modify vars with some integer values and prints
$obj->varA = 57;
$obj->varB = 58;
$obj->varC = 59;
var_dump($obj->toArray());

// Modify vars with some string values and prints
$obj->varA = "A";
$obj->varB = "B";
$obj->varC = "C";
var_dump($obj->toArray());

How to contribute?

If you want to add some functionality or fix bugs, you can fork, change and create pull request. If you not sure how this works, tryinteractive GitHub tutorial.

If you found any bug or have some questions, use issues tab and write there your questions.

About

PHP library for handling strict type class variables (not yet working)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Languages