1. Go to this page and download the library: Download demmonico/reflection library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
class Simple
{
use ConstantTrait;
const GROUP_TEST_ONEWORD = 1;
const GROUP_TEST_TWO_WORDS = 2;
const GROUP_TEST_COM_plex_LAbeL = 3;
public function test() { return $this->constGroupTest(); }
public function testStatic() { return static::constGroupTest(); }
public function testSingleLabel() { return $this->constGroupTest(static::GROUP_TEST_TWO_WORDS); }
public function testInvalidPrefix() { return $this->invalidGroupTest(); }
public function testInvalidConstGroup() { return $this->constInvalidGroup(); }
public function testInvalidConstValue() { return $this->constGroupTest(1000); }
}
$simple = new Simple;
//
// will return CORRECT results
//
$simple->test();
// or
$simple->testStatic();
// or
Simple::testStatic();
// returns array(3) { [1]=> string(7) "Oneword" [2]=> string(10) "Two Words" [3]=> string(16) "COM plex LAbe L" }
$simple->testSingleLabel();
// returns string(10) "Two Words"
//
// will throw an ERRORS
//
$simple->testInvalidPrefix();
// or
$simple->testInvalidConstGroup();
// if no parent::__call and/or parent::__callStatic exists then
// throws Error "Call to undefined method Simple::invalidGroupTest()" or "testInvalidConstGroup"
// else
// throws error from parent
$simple->testInvalidConstValue();
// throws Error "Invalid argument '1000' while calling Simple::constGroupTest(1000)"