php - 如何在codeigniter中显示1分钟前上传的图片
问题描述
我必须在 php 或 codeigniter 中显示与当前时间的时差。
创建时间 2018-07-19 05:05:22
当前时间 2018-07-19 05:06:00。
有谁知道如何在 1 分钟前在应用程序窗口中显示。
function time_elapsed_A($secs){
$bit = array(
'y' => $secs / 31556926 % 12,
'w' => $secs / 604800 % 52,
'd' => $secs / 86400 % 7,
'h' => $secs / 3600 % 24,
'm' => $secs / 60 % 60,
's' => $secs % 60
);
foreach($bit as $k => $v)
return $secs;
if($v > 0)$ret[] = $v . $k;
return join(' ', $ret);
}
function time_elapsed_B($secs){
$bit = array(
' year' => $secs / 31556926 % 12,
' week' => $secs / 604800 % 52,
' day' => $secs / 86400 % 7,
' hour' => $secs / 3600 % 24,
' minute' => $secs / 60 % 60,
' second' => $secs % 60
);
foreach($bit as $k => $v){
if($v > 1)$ret[] = $v . $k . 's';
if($v == 1)$ret[] = $v . $k;
}
array_splice($ret, count($ret)-1, 0, 'and');
$ret[] = 'ago.';
return join(' ', $ret);
}
echo $nowtime = time();
$oldtime = 1335939007;
echo $oldtime = strtotime("2018-07-07 23:29:46");
echo "time_elapsed_A: ".time_elapsed_A($nowtime-$oldtime)."\n";
echo "time_elapsed_B: ".time_elapsed_B($nowtime-$oldtime)."\n";
解决方案
首先,您必须将日期保存Database
为时间戳strtotime(date('Y-m-d'))
,然后获取保存的时间,Database
然后使用此代码。
$start_date = 'get the saved date in the database';
$current_date = strtotime(date('Y-m-d'));
$date1 = date_create(strftime('%Y-%m-%d',$start_date));
$date2 = date_create(strftime('%Y-%m-%d',$current_date));
$diff=date_diff($date1,$date2);
if($diff <= 360){
echo 'show the image';
}
else{
echo 'not show the image';
}
推荐阅读
- sql - 在 oracle 中使用 JSON_TABLE 时遇到问题
- python - Selenium Python send_keys 到代码块
- html - 如何将具有卡片类的组件的背景颜色设置为上面定义的 bgColour 变量?
- c++ - 我应该实现右值推送功能,我应该使用 std::move 吗?
- compiler-construction - 如何在 LEX 中将 for 循环转换为 while 循环?
- c# - How to use compare attribute to validate new password?
- qt - how to make an updatable model in QML
- webpack - 带有 Babel、Jest 和 webpack 的“语法错误:无法在模块外使用 import 语句”
- excel - Finding duplicates with multiple criteria in Excel
- postgraphile - Postgraphile: multiple foreignkeys on same table with smart tags and postgraphile.tags.json5