开发者

How to convert date into same format?

I want to get the $regi开发者_运维百科stratiedag and count a couple of days extra, but I always get stuck on the fact that it needs to be a UNIX timestamp? I did some google-ing, but I really don't get it.

I hope someone can help me figure this out. This is what I got so far.

$registratiedag = $oUser['UserRegisterDate'];
$today = strtotime('$registratiedag + 6 days');

echo $today;            
echo $registratiedag;

echo date('Y-m-d', $today);

There's obviously something wrong with the strtotime('$registratiedag + 6 days'); part, because I always get 1970-01-01


You probably want this:

// Store as a timestamp
$registratiedag = strtotime($oUser['UserRegisterDate']);
$new_date = strtotime('+6 days', $registratiedag);

// You'll need to format for printing $new_date
echo date('Y-m-d', $new_date);

// I think you want to compare $new_date against
// today's date. I'd recommend a string comparison here,
// As time() includes the time as well
// time() is implied as the second argument to date,
// But we'll put it anyways just to be clearer 
if( date('Y-m-d', $new_date) == date('Y-m-d', time()) ) {
  // The dates are equal, do something here
}
else if($new_date < time()) {
  // if the new date is earlier than today
}
// etc.

First it converts $registratiedag to a timestamp, then it adds 6 days

EDIT: You probably should change $today to something less misleading like $modified_date or something


try:

$today = strtorime($registratiedag); $today += 86400 * 6; // seconds in 1 day * 6 days

at least one of your problems is that PHP does not expand variables in single quotes.


$today = strtotime("$registratiedag + 6 days"); 
//use double quotes and not single quotes when embedding a php variable in a string


If you want to include the value of variable $registratiedag right into the text passed as parameter of strtotime, you have to enclose that parameter with ", not with '.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜