문제

I'm getting the output of:

Warning: strtotime() expects parameter 2 to be long, string given in C:\xampp\htdocs\MindWeather\Assimilation\foreca_hourly.php on line 17


Today is 2014117, Tomorrow is 1970101

My code is:

$TodayIs = date('Ynd');
$nextdate = date('Ynd', strtotime($TodayIs,'+ 1 day'));
echo "<br><br> Today is $TodayIs, Tomorrow is $nextdate<br><br>";

I really don't expect to get a 1970-answer. It's supposed to display "Today is 2014117, Tomorrow is 2014118" instead of "Today is 2014117, Tomorrow is 1970101"

도움이 되었습니까?

해결책

The second parameter to strtotime defaults to current time. So the following should produce desired result:

$nextdate = date('Ynd', strtotime('+1 day'));
// Today is 2014117, Tomorrow is 2014118

다른 팁

Why don't you make use of a DateTime Class ?

<?php
$date = new DateTime();
echo "Today is ".$date->format('Y/m/d');
$date->add(new DateInterval('P1D'));
echo "<br>Tomorrow is ".$date->format('Y/m/d');

OUTPUT :

Today is 2014/01/17
Tomorrow is 2014/01/18

Try like this:

$TodayIs = date('Ynd');
$nextdate = date('Ynd', strtotime('+ 1 day'));
echo "<br><br> Today is $TodayIs, Tomorrow is $nextdate<br><br>";

PHPfiddle link: http://phpfiddle.org/lite/code/bnf-scw

Try this:

$date = '2013-10-15';

$new_time = strtotime('+1 day', strtotime($date));

echo date('d-m-Y', $new_time); //displays 2013-10-16
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top