PHP 8.4.3 Released!

DateTime::format

DateTimeImmutable::format

DateTimeInterface::format

date_format

(PHP 5 >= 5.2.1, PHP 7, PHP 8)

DateTime::format -- DateTimeImmutable::format -- DateTimeInterface::format -- date_formatDevuelve la fecha formateada según el formato dado

Descripción

Estilo orientado a objetos

public DateTime::format(string $format): string
public DateTimeImmutable::format(string $format): string
public DateTimeInterface::format(string $format): string

Estilo por procedimientos

Devuelve la fecha formateada según el formato dado.

Parámetros

object

Solamente para el estilo por procedimientos: Un objeto DateTime devuelto por date_create()

format

Formato aceptado por date().

Valores devueltos

Devuelve la fecha formateada en caso de éxito o false en caso de error.

Ejemplos

Ejemplo #1 Ejemplo de DateTime::format()

Estilo orientado a objetos

<?php
$date
= new DateTime('2000-01-01');
echo
$date->format('Y-m-d H:i:s');
?>

Estilo por procedimientos

<?php
$date
= date_create('2000-01-01');
echo
date_format($date, 'Y-m-d H:i:s');
?>

El resultado del ejemplo sería:

2000-01-01 00:00:00

Notas

Este método no usa configuraciones regionales. Todas las salidas están en inglés.

Ver también

  • date() - Dar formato a la fecha/hora local
add a note

User Contributed Notes 1 note

up
0
jurchiks101 at gmail dot com
10 days ago
If you want to get the week of year + year of said week, you need to use `format('o-W'), otherwise you can stumble into a non-obvious gotcha (unless you RTFM and memorised it, that is).
Using `Y` instead of `o` can result in incorrect year values in the case of the first or last week of the year (depending on if January 4th falls into said week or not), such as the first week of 2025 between 2024-12-30 and 2025-01-05 - `(new DateTime('2024-12-30'))->format('o-W')` will return the correct value of `2025-01` (as per ISO-8601 definition of week of year), while `format('Y-W')` will return `2024-01`.
Because of this, I would personally recommend avoiding using week of year anywhere unless absolutely necessary, as it is easy to make this mistake and never realise it.
To Top