2015-08-22 4 views
-1
$number = 5; 
for ($i=$number;$i>.9;$i=($i/2)){ 
    if (is_float($i)) 
    { 
     echo $i.' is float <br>'; 
     $i=$i-0.5; 
    } 
    else 
    { 
     echo $i.' is not float <br>'; 
    } 
} 

Результат ::is_float() в РНР не работает в цикле

5 не всплывают

2.5 плавать

1 всплывают

Почему 1 плавать ?? Что не так???

+3

1) Вы инициализации '$ number' с целым числом 5. 2) Вы никогда не измените' $ number' в вашем коде 3) Вы всегда проверяю если '5' (' $ number') - это float ... – Rizier123

+0

Я исправил его еще раз. ... –

+0

Что будет? – Rizier123

ответ

2

Заменить if (is_float($number)) с if (is_float($i))

1

Заменить $i=$i-0.5; с $i=intval($i);

+0

решена. Благодаря @ Rizier123 теперь результаты показывают отличные результаты. –

Смежные вопросы