Dotaz mi připadá trochu zmatený, nicméně je asi sháňka po statické metodě, která by automaticky inicializovala statické třídní proměnné. V javě na to je static blok, v php to asi nejde. Udělat bych si místo toho singletona (
https://stackoverflow.com/a/3312860) anebo si ve vlastním autoloaderu po nahrání třídy zavolat tu inicializaci:
<?php
// index.php:
spl_autoload_register(function($class) {
include $class . '.php';
$class::__static();
});
print(Constants::CONST_A);
print(Constants::$constB);
print("\n");
?>
<?php
// Constants.php:
class Constants {
const CONST_A = 'A';
public static $constB;
public static function __static(){
self::$constB = 'B';
}
}
?>