Я ищу функцию для преобразования дат, представленных в «X Часах назад» и «X минут назад», обратно в метку времени в php, у кого есть душа для этого?Преобразование x часов x минут назад назад в unix timestamp
2
A
ответ
10
strtotime
уже делает это:
$timestamp = strtotime("8 hours ago");
См. relative time format specifications для получения дополнительной информации.
+0
Спасибо большое! Я все это пробовал, но что-то пошло не так. Работала отлично. – inviz
1
$hourago= "-1 hour";
$minago = "-2 minute";
$timestamp = strtotime($hourago.' '.$minago);
echo $timestamp;
или
$hourago= "-1";
$minago = "-2";
$timestamp = strtotime($hourago.' hour '.$minago.' minute');
echo $timestamp;
2
я помог кому-то на StackOverflow, чтобы написать функцию, которая делает реверс этого, здесь есть код, я уверен, что если вы расформирования и повернуть его вспять, вы будете иметь ваш ответ:
<?
$unix_time = 6734;
echo howLongAgo($unix_time);
function howLongAgo($time_difference){
// Swtich logic based on the time difference passed to this function, sets the english string and what number the difference needs to be divided by
switch($time_difference){
case ($time_difference < 60):
$string = " second";
break;
case ($time_difference >= 60 && $time_difference < 3600):
$string = " minute";
$divider = 60;
break;
case ($time_difference >= 3600 && $time_difference < 86400):
$string = " hour";
$divider = 3600;
break;
case ($time_difference >= 86400 && $time_difference < 2629743):
$string = " day";
$divider = 86400;
break;
case ($time_difference >= 2629743 && $time_difference < 31556926):
$string = " month";
$divider = 2629743;
break;
case ($time_difference >= 31556926):
$string = " year";
$divider = 31556926;
break;
}
// If a divider value is set during the switch, use it to get the actual difference
if($divider){$diff = round($time_difference/$divider);}else{$diff = round($time_difference);}
// If the difference does not equal 1, pluralize the final result EG: hours, minutes, seconds
if($diff != 1){$pluralize="s";}
// Concatenate all variables together and return them
$final = $diff . $string . $pluralize . " ago";
return $final;
}
?>
Смежные вопросы
- 1. Timestamp x часов назад и дней после 24 часов
- 2. Twitter стиль X минут назад
- 3. Как вы говорите, что что-то случилось «x минуты назад» или «x часов назад» или «x дней назад» в Ruby?
- 4. конвертировать timestamp в X секунду назад PHP
- 5. X минут назад функция JavaScript не работает
- 6. X минут и Y секунд назад
- 7. Преобразование только часов и минут в unix timestamp на Android
- 8. Преобразование timestamp ко времени назад в PHP
- 9. PHP: час назад, х часов назад
- 10. Отметка времени Unix для часов назад
- 11. «Время назад» из timestamp MySQL
- 12. javascript unix timestamp старше x
- 13. php и mysql. WHERE date <= X Часов назад?
- 14. Дней, часов, минут с момента timestamp
- 15. MySQL SELECT WHERE timestamp между 15 мин назад до 25 часов назад
- 16. Javascript преобразования DateTime в "______ секунд/минут/часов/месяцев назад"
- 17. Получите 3 года назад timestamp в golang?
- 18. Bash: Как отображать обычные файлы, которые были изменены как минимум x минут назад, но не раньше, чем y минут назад?
- 19. Bootstrap v3.3.x назад в 16 столбцов?
- 20. Фильтр шаблонов «x дней назад» в Django?
- 21. Как рассчитать X дней назад в javascript
- 22. Прослушать кнопку Android назад в cocos2d-x
- 23. python: как преобразовать «x дней назад» или «x месяц назад» на сегодняшний день?
- 24. python 3.x progressbar tkinter назад?
- 25. Удалить файлы старше X минут
- 26. Facebook сообщение Timestamps «X минуты назад»
- 27. как отправить результат назад весной 2.x
- 28. XTS - как получить данные x дней назад
- 29. Bash relative date (x дней назад)
- 30. JQuery перемещения курсора Назад «X» количество пространств
Почему этот вопрос отмечен MySQL? –
Потому что я хочу вставить его в MySQL после его преобразования, извините за то, что не упоминал об этом. – inviz
Я не вижу, как это важно. Вы можете распечатать его и наклеить на голову суперклей, если хотите, но это не имеет никакого отношения к вопросу. –