详解PHP使用日期时间处理器Carbon人性化显示时间

本文介绍了PHP使用日期时间处理器Carbon人性化显示时间,分享给大家,具体如下:

可以通过 Composer 很方便的来安装 Carbon

# composer require nesbot/carbon

使用方法也很简单

require 'vendor/autoload.php';

use Carbon\Carbon;

//显示中文

Carbon::setLocale('zh');

//获取昨天的时间戳

$ts = Carbon::yesterday()->timestamp;

//人性化显示时间

echo Carbon::createFromTimestamp($ts)->diffForHumans();

上面的打印结果是1天前

在 Laravel 框架中的使用方法

首先为了显示中文,在app/Providers/AppServiceProvider.php中添加\Carbon\Carbon::setLocale('zh');到boot()方法中,如下:

public function boot(){

\Carbon\Carbon::setLocale('zh');

}

然后就可以使用了,例如在ArticleController中的一个方法中人性化显示文章发表日期,假如发表日期为时间戳,在头部引用一下Carbon,添加如下代码

use Carbon\Carbon;

人性化发表时间

Carbon::createFromTimestamp($published_at)->diffForHumans();

Carbon除了人性化显示时间以外还有很多处理时间的功能,具体使用方法请参考官方文档。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

时间: 2017-08-07

前言 大家应该都知道,我们在很多时候使用 Carbon 来处理日期和时间,对吗?但是又有多少人完整的阅读过文档了解它有那些方法呢?除了众所周知的 now() 和 format() 方法,Carbon 还有很多其他有用的方法. 下面我们一起来看看吧. 1. isX: True/False 有很多方法来判断 Carbon 对象是否是今天.周末.闰年等等,下面这些是官方文档列出来的: <?php $dt->isWeekday(); $dt->isWeekend(); $dt->isYes

前言 我们大家在编写 PHP 应用时经常需要处理日期和时间,这篇文章带你了解一下 Carbon – 继承自 PHP DateTime 类的 API 扩展,它使得处理日期和时间更加简单. Laravel 中默认使用的时间处理类就是 Carbon. <?php namespace Carbon; class Carbon extends \DateTime { // code here } 你可以在 Carbon 命名空间的 Carbon 类中看到上面声明的代码片段. 安装 可以通过 Compose

Carbon介绍 Carbon是PHP中很人性化的时间日期处理插件,github拥有接近5000个 star. github地址为:https://github.com/briannesbitt/Carbon Carbon基本用法 //1.基本应用 $now = Carbon::now(); //2016-11-03 14:13:16 $today = Carbon::today(); //2016-11-03 00:00:00 $tomorrow = Carbon::tomorrow(); /

Java 中DateUtils日期工具类的实例详解 介绍 在java中队日期类型的处理并不方便,通常都需要借助java.text.SimpleDateFormat类来实现日期类型 和字符串类型之间的转换,但是在jdk1.8之后有所改善,jdk1.7以及之前的版本处理日期类型并不方便, 可以借助Joda Time组件来处理,尤其是日期类型的一些数学操作就更是不方便. java代码 /** * * 日期工具类 java对日期的操作一直都很不理想,直到jdk1.8之后才有了本质的改变. * 如果使用的

1. Date.compareTo() java.util.Date提供了在Java中比较两个日期的经典方法compareTo(). 如果两个日期相等,则返回值为0. 如果Date在date参数之后,则返回值大于0. 如果Date在date参数之前,则返回值小于0. @Test void testDateCompare() throws ParseException { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");

前言 好记性不如烂笔头,日期时间类那么花哨不如记下来多看两眼. 提示:以下是本篇文章正文内容,下面案例可供参考 一.日期时间类的包 代码如下(示例): java.util.Date; java.time.format.DateTimeFormatter; java.util.Calendar java.text.SimpleDateFormat; import java.time.LocalDate; import java.time.LocalDateTime; import java.tim

本文实例讲述了Python日期时间Time模块.分享给大家供大家参考,具体如下: 关于时间和日期模块 python程序能用很多方式处理日期和时间,转换日期格式是一种常见的功能. python提供了一个time和calendar模块可以用于格式化日期和时间. 时间间隔是以秒为单位的浮点小数 每个时间戳都以自从1970年1月1日午夜(历元)经过了多长时间来表示. python的time模块下有很多函数可以转换常见的日期格式. Time模块 1.1 名词解释 UTC :格林威治天文时间,世界标准时间,

复制代码 代码如下: import sqlite3conn = sqlite3.connect('/tmp/sqlite.db')cur = conn.cursor() 接下来干嘛呢?建一张表吧.这里需要注意的是,SQLite不支持在创建表的同时创建索引,所以要分两步走,先创建表然后再创建索引 复制代码 代码如下: create_table_stmt = '''CREATE TABLE IF NOT EXISTS test_table ( id INTEGER PRIMARY KEY AUTOI

Python中关于时间.日期的处理库有三个:time.datetime和Calendar,其中datetime又有datetime.date.datetime.time.datetime.datetime三个类.而时间又可以分为时间戳.本地时间和UTC时间(世界标准时间).是不是听起来有点乱?那么他们相互之间有什么区别?有什么联系?又如何转换呢? time模块 在time模块中,时间有三种表现形式: 时间戳,一般指Unix时间戳,是从1970年开始到现在的秒数. 本地时间的struct_time

例如: 现有一字符串为: var dt="2010-1-1 12:20:20"; 第一步:将其转换成日期时间型数据 复制代码 代码如下: var newDt=new Date(dt.replace("-","/")); 第二步:格式化数据成"yyyy-MM-dd" (1)扩展Date 复制代码 代码如下: Date.prototype.format = function(format){ var o = { "M+

如何在安装setuptools模块时不生成egg压缩包而是源码 Q:如何在安装setuptools模块时不生成egg压缩包而是源码,这样有时可以修改代码进行调试    A:其实很简单,就在setup.py中的setup函数中增加 zip_safe=False, 参数即可. 这样安装后的东西不再是一个egg文件了,而是象以前一样的目录结构. 如何判断一个字符串只包含数字字符    这是在 Python.list 邮件列表上看到的讨论 Q:如何判断一个字符串只包含数字字符    A:一种方法是 a.

无论是DATE还是timestamp都可以进行加减操作. 可以对当前日期加年.月.日.时.分.秒,操作不同的时间类型,有三种方法: 1 使用内置函数numtodsinterval增加小时,分钟和秒 2 加一个简单的数来增加天 3 使用内置函数add_months来增加年和月 例: 对当前日期增加一个小时: 复制代码 代码如下: SQL> select sysdate, sysdate+numtodsinterval(1,'hour') from dual ; SYSDATE

php carbon详解,详解PHP使用日期时间处理器Carbon人性化显示时间相关推荐

  1. layui日期与vue_详解Vue.js和layui日期控件冲突问题解决办法

    详解Vue.js和layui日期控件冲突问题解决办法 发布于 2020-8-10| 复制链接 摘记: 事故还原: 今天在用layui的日期控件的时候发现一个问题,就是form表单中的日期选择之后,如果 ...

  2. php 内存池,内存详解: 详解PHP内存池中的存储层_php

    php的内存管理器是分层(hierarchical)的.这个管理器共有三层:存储层(storage).堆(heap)层和 emalloc/efree 层.存储层通过 malloc().mmap() 等 ...

  3. gms认证流程_【热点资讯】详解Google GMS认证流程可大大缩短终端手机上市时间...

    原标题:[热点资讯]详解Google GMS认证流程可大大缩短终端手机上市时间 继联发科在2017年11月宣布正式进入谷歌的GMS Express项目后,日前紫光展锐也宣布了同样的计划,成为本土第一个 ...

  4. 《MySQL安装流程详解》及《MySQL安装一直失败,重新安装显示已安装》

    <MySQL安装流程详解>及<MySQL安装一直失败,重新安装显示已安装> 本文由博主经过查阅网上资料整理总结后编写,如存在错误或不恰当之处请留言以便更正,内容仅供大家参考学习 ...

  5. 计算机中常用软件列表,详解win10中常用软件列表不要在任务栏显示的方法

    我们在win10系统的使用中,在win10的界面中我们经常使用软件在电脑任务栏中会在电脑中显示,那很多的小伙伴在电脑中是不想要显示的遇到这个问题我们怎么取消这个常用的软件在任务栏一直显示的情况呢,今天 ...

  6. 【备战蓝桥】 算法·每日一题(详解+多解)-- day1

    [备战蓝桥] 算法·每日一题(详解+多解)-- day1 ✨博主介绍 什么是蓝桥杯 第一题: 第二题 第三题 第四题 第五题 第六题 第七题

  7. linux中iptables配置文件及命令详解详解

    linux中iptables配置文件及命令详解详解 2018年05月04日 14:23:41 hxpjava1 阅读数 956 linux中iptables配置文件及命令详解详解 iptables配置 ...

  8. 【备战蓝桥杯】 算法·每日一题(详解+多解)-- day11

    [备战蓝桥杯] 算法·每日一题(详解+多解)-- day11 ✨博主介绍 前言 Dijkstra 算法 流程 网络延迟时间 解题思路 Bellman-Ford 算法 流程 K 站内最便宜的航班 解题思 ...

  9. 如何判断立即数的合法性?(详解详析)

    如何判断立即数的合法性?(详解详析) <ARM体系结构与编程>一书中对立即数有这样的描述:每个立即数由一个8位的常数循环右移偶数位得到. 一个32位的常数,只有能够通过上面构造方法得到的才 ...

最新文章

  1. 添加lombok插件
  2. 快手春节活动奖励未到账,被羊毛党投诉上了全国12315平台
  3. python之路 mysql 博客园_Python之路(二十七):Mysql(下)
  4. mysql用户_MySQL用户权限管理详解
  5. 核酸结果统计难?130行代码实现基于ocr的核酸截图识别存储Excel(复现代码核查核酸报告)
  6. 【机械仿真】基于matlab GUI凸轮设计与仿真【含Matlab源码 153期】
  7. 《算法精解:C语言描述》勘误
  8. CodeForce Round#49 untitled (Hdu 5339)
  9. 小米5如何进入开发者模式
  10. 徐耀赐:人因与道路工程设计1(图文版)
  11. 删除linux终端的历史命令,清除Linux终端命令的历史记录
  12. 翻车率贼高的一个小题目
  13. 1.js基础01-计算机基础
  14. 北川中学教师群体:一切都是为了学生
  15. 关于华三WLAN调试空口利用率居高不下的调试心得
  16. Jess学习基础(一)
  17. 北理计算机学硕保研,2019计算机保研夏令营经验-上科大、北理、北航、中科院计算所夏令营...
  18. OLED滑动显示长字符
  19. zynq系列通过XMD进行JTAG调试出错解决方案
  20. Python进程、线程、协成

热门文章

  1. 笔记:3.5 《数据库系统概论》之基本表更新(INSERT、UPDATE、ALTER、DELETE)与视图VIEW(定义、查询、更新)
  2. springboot处理参数再转发请求_Springboot 2.0---WebFlux请求处理流程
  3. 在线工作坊 | 人工智能之 AI on Azure
  4. Leetcode 930. 和相同的二元子数组 题解
  5. java版+支付宝支付和微信支付(一)
  6. Unity开发备忘录000021:如何判断某一个对象是否有子对象
  7. java中修改xml文件内容_修改所有xml文件中的某些内容
  8. w ndows7与windows10区别,电脑系统windows 7和windows 10有什么区别?哪个更好?
  9. 什么是向量指令和标量指令?
  10. c语言匹配英文,正则英语_正则表达式怎么匹配英文句子_淘题吧