问题标签 [php-carbon]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 两种格式的时差
我有两个时间值要取差值。首先来自数据库,它看起来像“2014-05-13 10:41:09”。它是"Y-m-d H:i:s"
格式的。但它是一个Carbon
对象。
我还有另一个时间,就是现在。我明白了date('Y-m-d H:i:s');
我想拿这两次的差额。首先,我想进入now()
Carbon。但我不能。我不知道为什么。所以我试图将我的Carbon
对象转换为 PHP Date 对象。我也做不到。
但我倾倒并死了 Carbon 对象。它看起来像这样:
我要访问的日期在 ["date"] 部分。
我怎样才能得到这两次的差异?
这是这两天的输出:
2014-05-13 10:46:09
2014-05-13 10:46:20
编辑:
这是输出:
非常感谢你。
laravel-4 - 如何更改 Laravel 4 中输出日期的时区?
我有一个带有entity
表和users
表的数据库。实体表具有created_at
和的字段updated_at
。users 表有timezone
一个默认值为 的字段America/Toronto
。
在我看来,我可以使用以下代码以我想要的格式输出日期:
现在,如何使用用户表中的时区字段输出日期?就像是 ...
我正在寻找一种使用Carbon的简单方法(因为我在 Laravel 中使用 Eloquent,它将上述日期列转换为 Carbon 的实例)。
注意:我只希望在显示日期时更改时区 - 我仍然希望将所有日期存储在数据库中的默认 UTC 时区中。
另外,我在哪里可以找到可以与 Carbon 一起使用的有效时区列表?我想将这些存储在我的数据库中,以便用户可以更改他们的默认时区。
php - Laravel 4 InvalidArgumentException 中的 Carbon - 发现意外数据。尾随数据
我正在尝试获得 Eloquent 查询结果,DB::raw("DATE_FORMAT(created_at, '%m-%d-%Y %r') AS created_at")
但每次我从 Carbon 收到此异常时:
如果我将其更改为只是created_at
不使用 MySQL 的DATE_FORMAT()
功能,那么它可以毫无问题地获取数据。
我以前不仅没有问题地完成过这种日期格式,而且我检查了数据库表中的每个字段(这个种子只有 10 个)并且每个都是标准的有效日期,所以我想知道为什么 Carbon 会投球适合。
在 Laravel 4.1 中运行它。
php - 使用 laravel 处理其他 date_format
我正在尝试让其他日期格式在 laravel 4 中工作。我希望用户可以输入类似“31.12.2013”(格式:dmY)的内容。
因此我在模型中使用这个规则
现在用户可以以希望的格式输入日期,验证器接受该格式。我遇到的问题是,更新语句是这样执行的。
birthDate 字段具有日期类型,因此需要其他格式(如“updated_at”字段)。
我必须使用自己的 setBirthDateAttribute($value) 方法吗?还是有更好的可能性来解决这个问题?
php - 获取一个月的周数和对应的天数
我很确定我过于复杂了,但 atm 我不知道如何以另一种方式做到这一点。
我想创建一个数组,其中包含一个月中的周数作为键,本周的天数作为值。
我正在使用这个函数来获取一周中的所有天数:
这个函数来构建数组:
除了 2 月以外的所有月份,我都有 5 周的时间。二月份我有 4 周的时间,所以我无法保存月份重叠的日子。
我在这里完全错了吗?解决此任务的可能方法是什么?
laravel-4 - 尝试更改 Carbon created_at 日期的格式时,Laravel“发现意外数据”错误
当我尝试修改我的资源模型的默认 created_at 字段的格式时,我收到以下错误:
这是产生上述错误的代码:
如果我->format('F j, Y @ g:i A')
从上面的代码中删除,它可以正常工作,但它不是我想要的格式。问题可能是什么?我在我的应用程序的其他地方有几乎相同的代码,它可以正常工作。
更新:
使用setToStringFormat('F j, Y @ g:i A')
不会导致错误,但会返回null
.
laravel-4 - 碳 - 找不到文本月份 尾随数据
我正在使用 Laravel。尝试显示日期时出现以下错误:
格式是j M Y
,日期是2014-12-13 10:00:00
我不明白错误在哪里。
有什么硬仗吗?
php - 我如何在 sql 查询中使用 date mutators 或 carbon
如果我有一个从 DB::Select 返回的 sql 查询,我如何为我的 created_at 属性返回 Carbon 对象?
我希望能够做类似的事情:
我已经尝试将字段添加到我的模型上的 getDates 方法中,但它并没有什么不同——我假设它是一个自定义 sql 查询并且不返回一个对象。
laravel-4 - Laravel - 在保存之前转换输入日期格式
我正在尝试将日期输入转换为正确的 mysql 格式。我的 start_date 字段格式为 MM dd, yyyy。
在我的控制器存储功能中,我正在获取所有用户输入,包括 start_date 和保存。
我想我能做的是我们 Carbon 在保存之前转换 start_date 像这样。
我在非对象错误上收到对成员函数 toDateString() 的调用。
php - 更改时区而不更改 DateTime 对象的值
这是场景 - 我将 PHP 中的默认时区设置为 UTC。我使用的除一个日期/时间以外的所有日期/时间都设置为当前的 UTC 时间;稍后显示时,我为该特定用户设置时区,并且日期以他们的时区显示。效果很好。
除了我有一个用户可以在表单上输入的日期/时间。它在 24 小时内以“YYYY-MM-DD HH:MM”的形式出现(例如:“2014-09-18 17:00”)。用户自然会在他们的时区中设置这个时间,而不是 UTC。
如果我使用输入值创建一个新的 DateTime 对象,它会以 UTC 格式保存,因此稍后显示时它会关闭几个小时(取决于原始时区)。如果我在新对象上设置时区,它会更改值,再次假设输入值是 UTC。
我已经进行了一些谷歌搜索,但没有发现任何关于 PHP 的信息(我发现了 C# 的几个答案)。DateTime 对象(或 Carbon)可以做到这一点吗?我是否坚持根据用户当前时区手动加/减小时以首先将其放置在 UTC 中?