- Output for 7.0.0 - 7.0.20, 7.1.0 - 7.1.20, 7.2.0 - 7.2.33, 7.3.16 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.27, 8.2.0 - 8.2.17, 8.3.0 - 8.3.4
- Foo Value Bar Value foo is set
<?php
class Foo {
const MYARRAY = ['foo' => 'bar'];
protected static $props = ['Hello' => 'Foo Value'];
function getPropValue($propName) {
return static::$props[$propName];
}
function myFunc() {
return 'hey myFunc';
}
function yourFunc() {
return 'hey yourFunc';
}
function checkConst() {
if (isset(static::MYARRAY['foo'])) {
echo 'foo is set' . "\n\n";
} else {
echo 'foo is not set' . "\n\n";
}
}
}
class Bar extends Foo {
protected static $props = ['Hello' => 'Bar Value'];
}
$foo = new Foo();
echo $foo->getPropValue('Hello') . "\n\n";
// $functionArray = ['myFunc' => 'myFunc'];
// echo $foo->$functionArray['myFunc']() . "\n\n";
$bar = new Bar();
echo $bar->getPropValue('Hello') . "\n\n";
$foo->checkConst();