PHP 函数gmstrftime()将秒转换成天时分秒

  • 应用场景: 停车场计算一辆车的停车时长,比如1天13时24分30秒, 数据表里只存了一个进场时间的时间戳
 /**
     * 换算时间格式
     * @param int $in_time 进场时间的时间戳
     * @return string
     */
    public function getInParkLongTime($in_time = 0)
    {

        if ($in_time != 0){
            $second = time()-$in_time;
            $seconds = (int)$second;
            if( $seconds < 86400 ){//如果不到一天
                $format_time = gmstrftime('%H时%M分%S秒', $seconds);
            }else{
                $time = explode(' ', gmstrftime('%j %H %M %S', $seconds));//Array ( [0] => 04 [1] => 14 [2] => 14 [3] => 35 )
                $format_time = ($time[0]-1).'天'.$time[1].'时'.$time[2].'分'.$time[3].'秒';
            }
        }else{
            $format_time = 'error';
        }

        return $format_time;

    }

PHP 文档中

  • gmstrftime

(PHP 4, PHP 5, PHP 7)

gmstrftime — 根据区域设置格式化 GMT/UTC 时间/日期

  • 说明
gmstrftime ( string $format [, int $timestamp ] ) : string
  • 参数说明
格式 描述 返回值示例
--- ---
%a 当前区域星期几的简写 SunSat
%A 当前区域星期几的全称 SundaySaturday
%d 月份中的第几天,十进制数字(范围从 01 到 31) 0131
%e 月份中的第几天,十进制数字,一位的数字前会加上一个空格(范围从 ' 1' 到 '31') 在 Windows 上尚未按描述实现。更多信息见下方。 131
%j 年份中的第几天,带前导零的三位十进制数(范围从 001 到 366) 001366
%u 符合 ISO-8601 星期几的十进制数表达 [1,7],1 表示星期一 1 (星期一) 到 7 (星期日)
%w 星期中的第几天,星期天为 0 0 (星期天) 到 6 (星期六)
--- ---
%U 本年的第几周,从第一周的第一个星期天作为第一天开始 13 (for the 13th full week of the year)
%V %V - 本年第几周的 ISO-8601:1988 格式,范围从 01 到 53,第 1 周是本年第一个至少还有 4 天的星期,星期一作为每周的第一天。(用 %G 或者 %g 作为指定时间戳相应周数的年份组成。) 0153 (where 53 accounts for an overlapping week)
%W 本年的第几周数,从第一周的第一个星期一作为第一天开始 46 (for the 46th week of the year beginning with a Monday)
--- ---
%b 当前区域月份的简写 JanDec
%B 当前区域月份的全称 JanuaryDecember
%h 当前区域月份的简写(%b 的别名) JanDec
%m 两位数的月份 01 (是一月份) 到 12 (是十二月份)
--- ---
%C 两位数显示世纪(年份除以 100,截成整数) 19 是 20 世纪
%g 2 位数的年份,符合 ISO-8601:1988 星期数(参见 %V)。和 %V 的格式和值一样,只除了如果 ISO 星期数属于前一年或者后一年,则使用那一年。 比如:2009年1月6日那一周是 09
%G %g 的完整四位数版本 比如:2009年1月3日那一周是 2008.
%y 两位数显示年份 比如: 09 是 2009,79 是 1979
%Y 四位数显示年份 比如: 2038
时间 --- ---
%H 以 24 小时格式显示两位小时数 0023
%I 以 12 小时格式显示两位小时数 0112
%l('L' 的小写) 以 12 小时格式显示小时数,单个数字前含空格 112
%M 两位的分钟数 0059
%p 指定时间的大写 “AM” 或 “PM” 比如: 00:31 是 AM ,22:23 是PM
%P 指定时间的小写 “am” 或 “pm” 比如:00:31 是 am ,22:23 是pm
%r 和 "%I:%M:%S %p" 一样 比如: 21:34:17 是 09:34:17 PM
%R 和 "%H:%M" 一样 比如: 12:35 AM 是 00:35,4:44 PM 是 16:44
%S 两位数字表示秒 0059
%T 和 "%H:%M:%S" 一样 比如: 09:34:17 PM 是 21:34:17
%X 当前区域首选的时间表示法,不包括日期 例如: 03:59:1615:59:16
%z 从 UTC 的时区偏移 或 简写(由操作系统决定) 比如: 东部时间是 -0500EST
%Z %z 没有给出的 UTC 的时区偏移 或 简写(由操作系统决定) 比如: -0500EST 是东部时间
时间和日期戳 --- ---
%c 当前区域首选的日期时间表达 比如: 2009 年 2 月 5 日上午 12:45:10 是 Tue Feb 5 00:45:10 2009
%D 和 "%m/%d/%y" 一样 比如: 2009 年 2 月 5 日是 02/05/09
%F Same as "%Y-%m-%d" (commonly used in database datestamps) 比如:2009 年 2 月 5 日是 2009-02-05
%s Unix纪元的时间戳(和 time() 函数一样) 比如: 1979 年 9 月 10 日上午 8 点 40 分 00 秒是 305815200
%x 当前区域首选的时间表示法,不包括时间 比如: 2009 年 2 月 5 日是 02/05/09
其他 --- ---
%n 换行符("\n") ---
%t Tab 字符("\t") ---
%% 文字上的百分字符("%") ---

这个参数的最大长度是 1023 个字符。

  • 可选的 timestamp 参数是一个 integer 的 Unix 时间戳,如未指定,参数值默认为当前本地时间。也就是说,其值默认为 time() 的返回值。
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,546评论 6 507
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,224评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,911评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,737评论 1 294
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,753评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,598评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,338评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,249评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,696评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,888评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,013评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,731评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,348评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,929评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,048评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,203评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,960评论 2 355