Popularity
1.0
Declining
Activity
0.0
Stable
20
0
1

Description

PHP package to make your objects strict and throw exception when you try to access or set some undefined property in your objects.

Monthly Downloads: 0
Programming language: PHP
License: MIT License
Tags: Extensions     Miscellaneous     OOP    

Yell alternatives and similar libraries

Based on the "Miscellaneous" category.
Alternatively, view Yell alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of Yell or a related project?

Add another 'Miscellaneous' Library

README

:loudspeaker: Yell

Scrutinizer Code Quality Code Climate Latest Stable Version License

PHP package to make your objects strict and throw exception when you try to access or set some undefined property in your objects.

Requirement

PHP >= 5.4.0.

Installation

You can install the library using the following ways:

Using Composer

You can install this through Composer, a dependency manager for PHP. Just run the below command:

composer require zeeshanu/yell

For further details you can find the package at Packagist.

Manual way

  • Copy src to your codebase, perhaps to the vendor directory.
  • Add the Zeeshanu\Yell\Scream class to your autoloader or require the file directly.

Getting Started

I'm going to create take an example to demonstrate the usage.

For example, you have a Person class like below:

class Person
{
    public $name;
    public $age;
}

$person = new Person();

$person->name = 'John Doe';
$person->age = 23;

// Will silently set the property `profession` on `Person` without any issue 
$person->profession = 'Teacher';

Here is how you can make your object strict i.e. not allow any other properties except $name and $age and throw exceptions for any other properties. Just use Zeeshanu\Yell\Scream trait in your class as follows

use Zeeshanu\Yell\Scream;

class Person
{
    use Scream;

    public $name;
    public $age;
}

$person = new Person();

$person->name = 'John Doe';
$person->age = 23;

// An exception will be thrown when showing message "Trying to set undefined property $profession in class Person"  
$person->profession = 'Teacher';

Feedback

If you notice that there might be some improvements in code you can create a pull request or report an issue. You can also contact me at [email protected].

License

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.


*Note that all licence references and agreements mentioned in the Yell README section above are relevant to that project's source code only.