CakePHP
  • 文档
    • 手册
    • API
    • 视频
    • 报告安全问题
    • 隐私政策
    • 徽标和商标
  • 企业解决方案
  • 周边商品
  • 公路旅行
  • 团队
  • 社区
    • 社区
    • 参与
    • 问题 (Github)
    • 烘焙坊
    • 精选资源
    • 培训
    • 聚会
    • 我的 CakePHP
    • CakeFest
    • 时事通讯
    • 领英
    • YouTube
    • Facebook
    • Twitter
    • Mastodon
    • 帮助与支持
    • 论坛
    • Stack Overflow
    • IRC
    • Slack
    • 付费支持
CakePHP

C CakePHP 5.1 Chiffon API

  • 项目
    • CakePHP
      • CakePHP
      • Chronos
      • Elastic Search
      • 队列
  • 版本
    • 5.1
      • 5.1
      • 5.0
      • 4.5
      • 4.4
      • 4.3
      • 4.2
      • 4.1
      • 4.0
      • 3.10
      • 3.9
      • 3.8
      • 3.7
      • 3.6
      • 3.5
      • 3.4
      • 3.3
      • 3.2
      • 3.1
      • 3.0
      • 2.10
      • 2.9
      • 2.8
      • 2.7
      • 2.6
      • 2.5
      • 2.4
      • 2.3
      • 2.2
      • 2.1
      • 2.0
      • 1.3
      • 1.2

命名空间

  • 全局
  • Cake
    • 缓存
    • 集合
    • 命令
    • 控制台
    • 控制器
    • 核心
    • 数据库
      • 驱动程序
      • 异常
      • 表达式
      • 日志
      • 查询
      • 重试
      • 模式
      • 语句
      • 类型
    • 数据源
    • 错误
    • 事件
    • 表单
    • Http
    • I18n
    • 日志
    • 邮件发送器
    • 网络
    • ORM
    • 路由
    • 测试套件
    • 工具
    • 验证
    • 视图

类 DateTimeTimezoneType

扩展 DateTimeType,支持时区。

命名空间: Cake\Database\Type

属性摘要

  • $_className protected
    class-stringCake\I18n\DateTime>|class-stringDateTimeImmutable>

    创建对象时要使用的类名。

  • $_format protected
    string

    转换为字符串时使用的 DateTime 格式。

  • $_localeMarshalFormat protected
    array|string|int|null

    当 _useLocaleParser 为 true 时,marshal() 使用的区域感知格式。

  • $_marshalFormats protected
    list<string>

    marshal() 允许的 DateTime 格式。

  • $_name protected
    string|null

    此类型的标识符名称

  • $_useLocaleMarshal protected
    bool

    marshal() 是否应该使用具有 _localeMarshalFormat 的区域感知解析器。

  • $dbTimezone protected
    DateTimeZone|null

    数据库时区。

  • $defaultTimezone protected
    DateTimeZone

    默认时区。

  • $keepDatabaseTimezone protected
    bool

    转换时是否保留数据库时区

  • $userTimezone protected
    DateTimeZone|null

    用户时区。

方法摘要

  • __construct() public

    构造函数

  • _parseLocaleValue() protected

    使用 setLocaleFormat() 设置的格式,使用区域感知解析器解析字符串后,将字符串转换为 DateTime 对象。

  • _parseValue() protected

    使用 _marshalFormats 中的格式解析字符串后,将字符串转换为 DateTime 对象。

  • getBaseType() public

    返回此类继承的基类型名称。

  • getDateTimeClassName() public

    获取用于构建对象的类名。

  • getName() public

    返回此对象的类型标识符名称。

  • manyToPHP() public

    返回转换为此类型的 PHP 表示的值数组。

  • marshal() public

    将请求数据转换为 datetime 对象。

  • newId() public

    为给定类型生成新的主键值。

  • setDatabaseTimezone() public

    设置数据库时区。

  • setKeepDatabaseTimezone() public

    设置从数据库字符串创建的 DateTime 对象是否转换为默认时区。

  • setLocaleFormat() public

    设置 marshal() 解析字符串时使用的区域感知格式。

  • setUserTimezone() public

    设置用户时区。

  • toDatabase() public

    将 DateTime 实例转换为字符串。

  • toPHP() public

    将给定值从数据库类型转换为 PHP 等效项。

  • toStatement() public

    获取要在 PDO 语句中使用的绑定类型。

  • useLocaleParser() public

    设置是否使用 setLocaleFormat() 设置的区域感知格式解析传递给 marshal() 的字符串。

方法详细信息

__construct() ¶ public

__construct(string|null $name = null)

构造函数

参数
string|null $name optional

标识此类型的名称

_parseLocaleValue() ¶ protected

_parseLocaleValue(string $value): Cake\I18n\DateTime|null

使用 setLocaleFormat() 设置的格式,使用区域感知解析器解析字符串后,将字符串转换为 DateTime 对象。

参数
string $value

要解析并转换为对象的 value。

返回值
Cake\I18n\DateTime|null

_parseValue() ¶ protected

_parseValue(string $value): Cake\I18n\DateTimeDateTimeImmutable|null

使用 _marshalFormats 中的格式解析字符串后,将字符串转换为 DateTime 对象。

参数
string $value

要解析并转换为对象的 value。

返回值
Cake\I18n\DateTimeDateTimeImmutable|null

getBaseType() ¶ public

getBaseType(): string|null

返回此类继承的基类型名称。

当扩展基类型以添加额外功能时,这很有用,但仍然希望框架的其余部分对它继承的基类型使用相同的假设。

返回值
string|null

getDateTimeClassName() ¶ public

getDateTimeClassName(): class-stringCake\I18n\DateTime>|class-stringDateTimeImmutable>

获取用于构建对象的类名。

返回值
class-stringCake\I18n\DateTime>|class-stringDateTimeImmutable>

getName() ¶ public

getName(): string|null

返回此对象的类型标识符名称。

返回值
string|null

manyToPHP() ¶ public

manyToPHP(array $values, list<string> $fields, Cake\Database\Driver $driver): array<string, mixed>

返回转换为此类型的 PHP 表示的值数组。

参数
array $values
list<string> $fields
Cake\Database\Driver $driver
返回值
array<string, mixed>

marshal() ¶ public

marshal(mixed $value): DateTimeInterface|null

将请求数据转换为 datetime 对象。

最适合将请求数据转换为 PHP 对象,这些对象对 ORM/数据库层更有意义。

参数
mixed $value

请求数据

返回值
DateTimeInterface|null

newId() ¶ public

newId(): mixed

为给定类型生成新的主键值。

此方法可用于类型在插入实体时创建新的主键值。

返回值
mixed

setDatabaseTimezone() ¶ public

setDatabaseTimezone(DateTimeZone|string|null $timezone): $this

设置数据库时区。

这是将数据库字符串转换为 DateTime 实例以及将 DateTime 实例转换为数据库字符串时使用的时区。

参数
DateTimeZone|string|null $timezone

数据库时区。

返回值
$this
另请参阅
DateTimeType::setKeepDatabaseTimezone

setKeepDatabaseTimezone() ¶ public

setKeepDatabaseTimezone(bool $keep): $this

设置从数据库字符串创建的 DateTime 对象是否转换为默认时区。

如果您的数据库日期时间在您想在 DateTime 实例中保留的特定时区,则将其设置为 true。

当为 false 时,datetime 时区将转换为默认时区。这是默认行为。

参数
bool $keep

如果为 true,则转换到 DateTime 实例时保留数据库时区。

返回值
$this

setLocaleFormat() ¶ public

setLocaleFormat(array|string $format): $this

设置 marshal() 解析字符串时使用的区域感知格式。

请参阅 Cake\I18n\Time::parseDateTime() 以了解可接受的格式。

参数
array|string $format

区域感知格式

返回值
$this
另请参阅
\Cake\I18n\Time::parseDateTime()

setUserTimezone() ¶ public

setUserTimezone(DateTimeZone|string|null $timezone): $this

设置用户时区。

这是将字符串编组到 DateTime 实例时使用的时区。

参数
DateTimeZone|string|null $timezone

用户时区。

返回值
$this

toDatabase() ¶ public

toDatabase(mixed $value, Cake\Database\Driver $driver): string|null

将 DateTime 实例转换为字符串。

参数
mixed $value

要转换的值。

Cake\Database\Driver $driver

要转换的驱动程序实例。

返回值
string|null

toPHP() ¶ public

toPHP(mixed $value, Cake\Database\Driver $driver): Cake\I18n\DateTimeDateTimeImmutable|null

将给定值从数据库类型转换为 PHP 等效项。

参数
mixed $value

要转换为 PHP 等效项的值

Cake\Database\Driver $driver

将从中提取数据库首选项和配置的对象

返回值
Cake\I18n\DateTimeDateTimeImmutable|null

toStatement() ¶ public

toStatement(mixed $value, Cake\Database\Driver $driver): int

获取要在 PDO 语句中使用的绑定类型。

参数
mixed $value
Cake\Database\Driver $driver
返回值
int

useLocaleParser() ¶ public

useLocaleParser(bool $enable = true): $this

设置是否使用 setLocaleFormat() 设置的区域感知格式解析传递给 marshal() 的字符串。

参数
bool $enable 可选

是否启用

返回值
$this

属性详情

$_className ¶ protected

创建对象时要使用的类名。

类型
class-stringCake\I18n\DateTime>|class-stringDateTimeImmutable>

$_format ¶ protected

转换为字符串时使用的 DateTime 格式。

类型
string

$_localeMarshalFormat ¶ protected

当 _useLocaleParser 为 true 时,marshal() 使用的区域感知格式。

请参阅 Cake\I18n\Time::parseDateTime() 以了解可接受的格式。

类型
array|string|int|null

$_marshalFormats ¶ protected

marshal() 允许的 DateTime 格式。

类型
list<string>

$_name ¶ protected

此类型的标识符名称

类型
string|null

$_useLocaleMarshal ¶ protected

marshal() 是否应该使用具有 _localeMarshalFormat 的区域感知解析器。

类型
bool

$dbTimezone ¶ protected

数据库时区。

类型
DateTimeZone|null

$defaultTimezone ¶ protected

默认时区。

类型
DateTimeZone

$keepDatabaseTimezone ¶ protected

转换时是否保留数据库时区

类型
bool

$userTimezone ¶ protected

用户时区。

类型
DateTimeZone|null
OpenHub
Pingping
Linode
  • 商业解决方案
  • 展示
  • 文档
  • 手册
  • API
  • 视频
  • 报告安全问题
  • 隐私政策
  • 徽标和商标
  • 社区
  • 参与
  • 问题 (Github)
  • 烘焙坊
  • 精选资源
  • 培训
  • 聚会
  • 我的 CakePHP
  • CakeFest
  • 时事通讯
  • 领英
  • YouTube
  • Facebook
  • Twitter
  • Mastodon
  • 帮助与支持
  • 论坛
  • Stack Overflow
  • IRC
  • Slack
  • 付费支持

使用 CakePHP API 文档 生成