2016-06-30 159 views
-1

我有日期/時間保存在我的sql表中作爲列「registertime」。日期時間插入表

$stmt = $mysqli->prepare("SELECT username, firstname, lastname, registerdate FROM users WHERE level < 1"); 
$stmt->bind_param('ssss', $_GET['username'], $_GET['firstname'], $_GET['lastname'], $_GET['registerdate']); 
$stmt->execute(); 
$stmt->bind_result($username, $firstname, $lastname, $registerdate); 

我想用我的註冊日期值從使用弄清楚有多少天前有人註冊(日期( 'YMD H:I:S')

<?php 
$today = strtotime(date('Y-m-d H:i:s')); 
$dayspassed = strtotime($registerdate)); 
$daysinactive = $dayspassed - $today; 
?> 

我有日期用戶登記存儲在$ registerdate的話,我想找出自$ registerdate和當前日期多少天過去了,所以我可以回聲出「此用戶註冊3天前」。

+2

你沒有佔位符。 –

+0

如何在數據庫中存儲日期?哪種格式? –

+0

日期/時間用在表 – nathzOO

回答

1

您可以使用DateTime類

<?php 
$bday = new DateTime('2016-05-016'); //y-m-d 
$today = new DateTime('2010-08-01 00:00:00'); // for testing purposes 

$diff = $today->diff($bday); 

printf('%d years, %d month, %d days', $diff->y, $diff->m, $diff->d); 
1
$datetime1 = date_create('2009-10-11'); 
$datetime2 = date_create('2009-10-13'); 
$interval = date_diff($datetime1, $datetime2); 
echo $interval->format('%R%a days'); 

輸出:+ 2天

+0

是的,但日期已存儲在$ registerdate – nathzOO

+0

然後使用 $ today = new DateTime(「now」); $ dayspassed = new DateTime($ registerdate); $ interval = date_diff($ today,$ dayspassed); –

+0

沒有工作 - '$ today = new DateTime(「now」); ' '$ dayspassed = new DateTime($ registerdate); ' '$ interval = date_diff($ today,$ dayspassed);' 'echo $ interval;' – nathzOO