<?php //for( $i=9 ; $i>=0 ; $i-- ){ for( $i=10 ; $i-- ; ){ var_dump($i); }
結果
int(9) int(8) int(7) int(6) int(5) int(4) int(3) int(2) int(1) int(0)
つまり、
<?php for( $i=0 ; $i<=10 ; $i++ ){ var_dump( $i==True ); }
の結果が
bool(false) bool(true) bool(true) bool(true) bool(true) bool(true) bool(true) bool(true) bool(true) bool(true)
ということなのだ
追記
当然
<?php $i=10 for( $i-- ){ var_dump( $i ); }
でも一緒。
注意
時々、
<?php $global=10; //適当な数値を返す関数 function minus(){ global $global; if( $global-- > -5 ){ return $global; } } //falseが帰ってきたら(関数内でreturnが無かったら)止める while( $a = minus() ){ var_dump($a); }
とか作ったときに、偶然にも、「0」が返ってきたりすると、止まってしまう。
結果
int(4) int(3) int(2) int(1)