Базовое целочисленное деление в PHP не работает - Я невежественный

(Похоже, что что-то не так с моей средой / системой. Я анализирую это в настоящее время. Каждый логический ответ была попытка, но она не удалась. Итак, я сообщу, как только у меня будет что-то еще. Спасибо за ответы!)

Я написал простой PHP-код для расчета продолжительности между двумя датами,и выполните простую арифметику, чтобы вычислить процентное значение.

Я не могу понять, почему это не работает! Мне кажется, что переменная обрабатывается как целое число в одной строке и строка в другой.

$start_DT = new DateTime($startdate); // e.g. 2011-06-07
$end_DT   = new DateTime($enddate);   // e.g. 2011-06-14
$today_DT = new DateTime("now");      // 2011-06-09

$duration       = date_diff($end_DT, $start_DT)->d;
$days_remaining = date_diff($end_DT, $today_DT)->d;

echo $days_remaining; // This outputs a value of "4" in my specific case
echo $duration;       // This outputs a value of "7" for my specific case. 

$percentage_dur_complete = $days_remaining / $duration;

echo $percentage_dur_complete; // This gives a value of NAN

// This line says that I am dividing my zero, to imply that 
// $duration might be a string. 
$percentage_dur_complete = $days_remaining / (float) $duration; 

Я что-то упустил? Я относительный новичок (2 месяца) в PHP. Я действительно надеюсь (рискуя показаться глупым), что кое-что упустил.

Спасибо!

6
задан M P 10 June 2011 в 00:00
поделиться