php 小时分钟 大小,关于时间:使用PHP将分钟数转换为小时和分钟
我有一个名为$final_time_saving的变量,它只是几分钟,例如250。
如何使用此格式的PHP将分钟数转换为小时和分钟:
4 hours 10 minutes
这个数字是分钟计数吗? 250分钟!= 4小时17分钟
不,但谷歌搜索250分钟的小时数返回4.16666667小时,所以也许这就是罗布得到这个数字的地方?
可能重复转换秒到小时:分钟:秒
function convertToHoursMins($time, $format = '%02d:%02d') {
if ($time < 1) {
return;
}
$hours = floor($time / 60);
$minutes = ($time % 60);
return sprintf($format, $hours, $minutes);
}
echo convertToHoursMins(250, '%02d hours %02d minutes'); // should output 4 hours 17 minutes
代码之后的评论很有趣..从问题复制... 250分钟是4小时(240分钟)和10分钟,而不是17 :)
确实是。不知道为什么我这么写!离开它为后代:)
如果这只会在小时= 0时返回分钟,那就太好了。
@timpeterson这很容易实现。
@MartinBean谢谢我意识到这一点。我在谈论将代码添加到此示例中。
@timpeterson我认为这超出了这个答案的范围。以上并不意味着是一个使用中的情况助手。如果需要,OP可以考虑零值;以上应该足以让他们开始。
将格式更改为'%d:%02d'可能会有所帮助,因为像"6:1"这样的字符串并不像"6:01"那样有意义。
那几天呢?)
echo date('H:i', mktime(0,257));
大!很快!多谢兄弟!
最好的解决方案!另外,对于秒=>日期('H hi m:s s',mktime(0,0,$ totalSeconds))
错误的解决方案。不适用于> 24小时的时间,也取决于时区配置。这不是您正在使用的日期,请勿使用date功能。
这是问题的解决方案,但你是正确的,@ deceze,它不准确,周期超过24小时。但我不知道这是如何依赖于时区的。相反; gmmktime将返回本地偏移时间。
不可否认,如果您编写完全类似的代码,时区可能不会影响它。但是,由于时区恶作剧,很容易引入错误:3v4l.org/oH4ao
当你只需要转换一些整数并且你保持在24小时范围内时,这是完美的!
我怎样才能在几秒钟内完成这项工作?我试过跟随日期('H:我:s')..但这没有任何想法?
救救我...很棒......
这是一个误导性的解决方案,至少应该注意到这不会超过24小时。
$hours = floor($final_time_saving / 60);
$minutes = $final_time_saving % 60;
这实际上是最好的解决方案。不涉及任何日期功能
这应该是公认的答案。非常感谢。
您可以使用DateTime扩展来实现此目的,这也适用于大于一天(>= 1440)的分钟数:
$minutes = 250;
$zero = new DateTime('@0');
$offset = new DateTime('@' . $minutes * 60);
$diff = $zero->diff($offset);
echo $diff->format('%a Days, %h Hours, %i Minutes');
demo
如果您有像12.99之类的分钟,这会中断
@Martin Bean的答案是完全正确的,但在我看来,它需要一些重构来适应普通用户对网站(网络系统)的期望。
我认为当分钟数低于10时,必须添加前导零。
例如:10:01,而不是10:1
我将代码更改为接受$time = 0,因为0:00优于24:00。
还有一件事 - 当$time大于1439时没有任何情况 - 这是23:59而下一个值只是0:00。
function convertToHoursMins($time, $format = '%d:%s') {
settype($time, 'integer');
if ($time < 0 || $time >= 1440) {
return;
}
$hours = floor($time/60);
$minutes = $time%60;
if ($minutes < 10) {
$minutes = '0' . $minutes;
}
return sprintf($format, $hours, $minutes);
}
好的,我同意会议记录需要一个领先的零。另一种方法是使用sprintf的填充功能:echo sprintf('%02d', 2); // this echos"02"
与分钟相同,我添加了几个小时,特别重要的是添加到数据库,所以mysql不会混淆
$t = 250;
$h = floor($t/60) ? floor($t/60) .' hours' : '';
$m = $t%60 ? $t%60 .' minutes' : '';
echo $h && $m ? $h.' and '.$m : $h.$m;
4小时10分钟
很抱歉提出了一个古老的主题,但我从其中一个答案中经常使用了一些代码,今天我告诉自己我可以不偷某人的代码就可以做到。我很惊讶它是多么容易。我想要的是在08:30返回510分钟,所以这就是代码所做的。
function tm($nm, $lZ = true){ //tm = to military (time), lZ = leading zero (if true it returns 510 as 08:30, if false 8:30
$mins = $nm % 60;
if($mins == 0) $mins ="0$mins"; //adds a zero, so it doesn't return 08:0, but 08:00
$hour = floor($nm / 60);
if($lZ){
if($hour < 10) return"0$hour:$mins";
}
return"$hour:$mins";
}
我使用短变量名称,因为我将使用该函数很多,而且我很懒。
最简单的方法是:
gmdate('H:i', $numberOfSeconds * 60)
感谢@Martin_Bean和@Mihail Velikov的回答。我刚刚拿了他们的答案片段并添加了一些修改来检查,
如果只有小时可用且分钟值为空,则它将仅显示小时数。
如果仅"分钟"可用且小时值为空,则相同,则仅显示分钟。
如果分钟= 60,则显示为1小时。如果分钟= 1则相同,输出将为1分钟。
欢迎更改和编辑。
谢谢。这是代码。
function convertToHoursMins($ time){
$hours = floor($time / 60);
$minutes = ($time % 60);
if($minutes == 0){
if($hours == 1){
$output_format = '%02d hour ';
}else{
$output_format = '%02d hours ';
}
$hoursToMinutes = sprintf($output_format, $hours);
}else if($hours == 0){
if ($minutes < 10) {
$minutes = '0' . $minutes;
}
if($minutes == 1){
$output_format = ' %02d minute ';
}else{
$output_format = ' %02d minutes ';
}
$hoursToMinutes = sprintf($output_format, $minutes);
}else {
if($hours == 1){
$output_format = '%02d hour %02d minutes';
}else{
$output_format = '%02d hours %02d minutes';
}
$hoursToMinutes = sprintf($output_format, $hours, $minutes);
}
return $hoursToMinutes;
}`
以防你想要的东西:
echo date('G \h\o\u
\s i \m\i
\u\t\e\s', mktime(0, 90)); //will return 1 hours 30 minutes
echo date('G \j\a\m i \m\e
\i\t', mktime(0, 90)); //will return 1 jam 30 menit
$m = 250;
$extraIntH = intval($m/60);
$extraIntHs = ($m/60); // float value
$whole = floor($extraIntHs); // return int value 1
$fraction = $extraIntHs - $whole; // Total - int = . decimal value
$extraIntHss = ($fraction*60);
$TotalHoursAndMinutesString = $extraIntH."h".$extraIntHss."m";
function hour_min($minutes){// Total
if($minutes <= 0) return '00 Hours 00 Minutes';
else
return sprintf("%02d",floor($minutes / 60)).' Hours '.sprintf("%02d",str_pad(($minutes % 60), 2,"0", STR_PAD_LEFT))." Minutes";
}
echo hour_min(250); //Function Call will return value : 04 Hours 10 Minutes
php 小时分钟 大小,关于时间:使用PHP将分钟数转换为小时和分钟相关推荐
- mysql如何时间减10分钟_mysql – 从时间值中减去分钟数
我的数据库中有一个时间字段,其值为22:05 我想减去5分钟.当字段是datetime时我使用sub_date并且工作正常,但我无法通过时间字段得到它,我收到警告我不知道如何处理; mysql> ...
- 7-5 分钟秒钟的时间相减 (10 分)
7-5 分钟秒钟的时间相减 (10 分) 题目描述: 定义一个时间类,分钟和秒钟是其两个私有成员数据.输入一个起始时间和一个结束时间(起始时间早于结束时间),通过运算符重载-(减号),计算这两个时间相 ...
- Java将分钟数转为小时并且精确到几小时几分钟
Java将分钟数转为小时并且精确到几小时几分钟 话不多说,直接上代码 int liveTimeTotle = 300;int hours = (int) Math.floor(liveTimeTotl ...
- 通过初始时间和流逝的分钟数计算终止时间
0 引言 在python中,可以通过起始时间和流逝的时间计算出终止时间. 1 问题 输入在一行中给出两个整数,分别是四位数字表示的起始时间,以及流逝的分钟数,其间以空格分隔.注意:在起始时间中,当小时 ...
- mysql当前时间减1小时_最佳睡眠时间:晚上睡眠不超8小时,午睡不超1小时
最近,2020年的欧洲心血管学会 年会(ESC 2020)公布的两则研究摘要, 都是和睡觉有关的. 根据这两则研究, 可以得出最佳睡眠时间: 晚上睡眠不超8小时, 午睡不超1小时! 晚上睡超过8小时, ...
- js uniapp开发如何把分钟数转换为多少小时多少分钟
<template><view class="content"><view>{{toHourMinute(duration)}}</vie ...
- mysql两个时间相减的分钟数_mysql 俩个时间相减后取分钟
CASE WHEN TIMESTAMPDIFF(MINUTE,o.createDate,o.chargingStartDate) != THEN 'APP解锁计费' ELSE '系统自动计费' END ...
- python当前时间加一分钟,python 当前时间多加七天、一小时、一分钟
首先看下,datetime的使用 import datetime >>> print datetime.datetime.now() 2017-07-15 15:01:24.6190 ...
- matlab时间是不是毫秒,matlab – 将毫秒转换为小时和绘图
在这种情况下,最好使用 datenum值,然后使用 datetick将绘图的刻度标签格式设置为"HH:MM". 假设您开始在t_1 = [HH_1,MM_1]进行测量并停止在t_2 ...
最新文章
- APK 签名中应该注意的一些点 (未完待续)
- iOS 中strong,weak,copy,assign区别
- NoSQL之Redis非关系数据库(redis概述,持久化,RDB持久化,AOF持久,内存碎片)
- iis php 0x80070032,访问网站时 HTTP 错误 404.17 - Internet Information Services | Microsoft Docs...
- di容器_DI容器是代码污染者
- AGPM(高级组策略管理)3.0之二操作
- 逻辑回归 - sklearn (LR、LRCV、MLP、RLR)- Python代码实现
- react-组件状态机制(五)
- 在windows生产环境搭建sphinx的注意事项
- 哆啦A梦的神奇口袋:帮你打破信息不对称,拒绝被割韭菜
- Java并发之-队列同步器AQS
- The requested URL * was not found on this server. 的解决方法
- 关于错误 Unhandled exception in (KERNEL32.DLL):0xE06D7363:Microsoft C++ Exce vc and access insert 记录
- 计算机为什么检测不到u盘启动项,电脑无法识别U盘启动BIOS里面找不到U盘启动项...
- Unity3D RectTransform中文教程详细用法分析
- 【MATLAB实验】数学实验实验求根问题三种方法、积分画图及古典密码设计(二分法、牛顿法、不动点迭代法)
- 点播影院——影院微信运营新模式
- 关于页面出现未定义错误的解决
- IDEA安装lombok插件以及解决无法加载Marketplace的方法
- 最大子矩阵(悬挂线)
热门文章
- 激活UltraEdit 的方法
- 利用下班时间做博主 必备软件工具推荐
- 东华大学2020考研计算机复试准备上机题解析答案_基础篇 前言
- YOLOv4: 虽迟但到,大型调优现场,43mAP/83FPS | 论文速递
- office转pdf实现office在线预览(aspose)
- 静态ARP与动态ARP
- 网络运维(Python自动化运维)考点
- 2021中国高校大数据挑战赛A题复盘+解题思路
- ftp地址,ftp地址的2大作用
- python中unicode编码怎么用_详解Python2.x中对Unicode编码的使用