2013-07-05 31 views
6
function track_times() { 
static $i = 0; 
$i++; 
static $i = 5; 
return $i; 
} 

echo track_times() . "\n"; 
echo track_times() . "\n"; 

sonucudur:İkinci statik değişken ataması neden ilkini etkiliyor?

6 
7 

İnsanların bu şekilde static değişkenleri kullanmayın biliyorum sadece sonucu izah edemez. Sonuç, ikinci atamanın yürürlüğe gireceğini ima eder, ancak $i ödevden önce kendini artırır, bu nedenle işlevin ilk başlatılması 6 nı neden döndürür?

+0

Ancak bu deseni neden yazmak istiyorsunuz? mantıklı değil. – Raptor

cevap

İlgili konular