Я пытаюсь вычесть две даты, используя php. Dateone хранится в базе данных, а datetwo - текущая дата. Теперь у меня есть этот странный сценарий: Dateone является 23-03-13 Дата два является 02-04-13Php вычесть две даты с разными датами возвращает неправильный результат
Используя различные методы вычитания, дают различные результаты.
Метод один - возвращает -21
$sqldate ="SELECT exam_date FROM exam_table";
$fetchdate = mysql_query($sqldate);
$rowdate = mysql_fetch_array($fetchdate);
//Fetch the date stored in the database
$dateone = $rowdate['exam_date'];
//Calculate the current date today
$datetwo =date('d-m-y');
//Calculate the diff between the two dates
$datediff = $datetwo-$dateone;
В этом случае $ DATEDIFF возвращает -21
Второй метод - Возвращает -7639
$sqldate ="SELECT exam_date FROM exam_table";
$fetchdate = mysql_query($sqldate);
$rowdate = mysql_fetch_array($fetchdate);
//Fetch the date stored in the database
$dateone = $rowdate['exam_date'];
//Calculate the current date
$datetwo =date('d-m-y');
//Calculate the diff between the two dates
$datetime1 = strtotime("$dateone");
$datetime2 = strtotime("$datetwo");
//seconds between the two times
$secs = $datetime2 - $datetime1;
$days = $secs/86400;
В этом случае , возврат в долларах США -7639
Я предполагаю, что одна из дат больше, чем другая. Распечатайте их во время выполнения и посмотрите. – MahanGM
Во втором вы используете $ datetoday, но конвертируете во время, используя $ datetwo. Также выпишите результат $ dateone, затем $ datetwo во время выполнения, чтобы мы могли увидеть результат. – karmafunk
где '$ datetwo' в ** метод два ** ?? – egig