
PHP - deklarace s inicializaci
Proč nechodí deklarace s inicializací jako v jiných jazycích?
Toto funguje:
class Databaze
{
public static function GetInstance()
{
static $db;
$db = new Databaze();
}
}
Toto nefunguje, proč?
class Databaze
{
public static function GetInstance()
{
static $db = new Databaze();
}
}
Zkus se zeptat na diskuse.jakpsatweb.cz
Jako laik si myslím toto:
Statická proměnná by měla být inicializována "při spuštění programu" jako konstanta.
Kdežto operátor new se používá až při dynamické inicializaci ("jakoby po spuštění").
To může být důvod, proč se mu to nelíbí.