documentation about modify()显示了一些在数字和其单位之间始终包含空格的示例:

$date->modify('+1 day');
$date->modify('+1 month');

这些空间是强制性的吗?使用+1day+1 day的呼叫是否会产生相同的结果?

示例:

$now = new DateTimeImmutable();

echo $now->modify('+1day')->format('c');
echo PHP_EOL;
echo $now->modify('+1 day')->format('c');

I tried on 3v4l,它给出了相同的日期,所以看起来空格不是必需的,但是我很想知道PHP语言是如何定义这种输入格式的.Supported Date and Time Formats page没有给出任何细节(1).

(1):从:https://github.com/php/doc-en/issues/2674#issuecomment-1674040916开始修复

推荐答案

支持的日期和时间格式页面没有提供任何细节.

您询问的格式是其中一个相对的格式,因此请按照链接指向它们的描述,https://www.php.net/manual/en/datetime.formats.relative.php:

Format Description Examples
number space? (unit | 'week') Handles relative time items where the value is a number. "+5 weeks", "12 day", "-7 weekdays"

space?之后的那个问号,意味着这个空格确实是可选的.

Php相关问答推荐

在不超过PHP时间限制的情况下,在Laravel中高效地插入批量数据(25万条记录)?(队列、多租户)

无法在WooCommerce中发送客户笔记邮箱通知

基于不用于变体的产品属性隐藏多个WooCommerce发货方式

用于计算付款费用的WooCommerce管理编辑产品中的自定义复选框

使用列入黑名单的单词和自定义业务逻辑的组合将特定的子字符串包装在HTML标记中

在PHP中循环访问多维数组,并按组显示内容

在PHP中读取JSON

通过访问单个产品页面更新WooCommerce产品元数据

WooCommerce在购买后多次重定向

在Symfony 6.4中将工作流动态添加到服务

服务器迁移后无法上载文件-可能存在权限问题

在PHP中处理Linux输入事件(/dev/input/Event*)

在WooCommercestore 页面上显示库存产品属性的值

按类别层次 struct 过滤 Laravel 集合

使用产品自定义字段作为 WooCommerce 中特定用户角色的折扣百分比

跟踪通过 WooCommerce 分层定价表插件进行的购买

PHP:如何将多列sql查询结果转换成数组

php如何删除括号内的百分比值

Docker: unixodbc.h 没有这样的文件或目录.已安装 unixodbc-dev 时出现pecl install sqlsrv错误

使用 splat 运算符时按引用传递 (...)