function track_times() {
static $i = 0;
$i++;
static $i = 5;
return $i;
}
echo track_times() . "\n";
echo track_times() . "\n";
Il risultato è:Perché la seconda assegnazione della variabile statica ha effetto non il primo?
6
7
So che la gente non usano static
variabili in questo modo, solo che non può spiegare il risultato. Il risultato implica che il secondo compito ha effetto, ma $i
si incrementa prima dell'assegnazione, quindi perché la prima chiamata della funzione restituisce 6?
ma perché vuoi scrivere questo modello? non sembra logico. – Raptor