J'ai besoin de formater un horodatage au format ISO 8601 (par exemple La commande que j'utilise est : p> Ceci produit: Comment puis-je l'obtenir pour insérer un 2001-10-26T21: 32: 52 code>). Lorsque j'utilise la date
date () code> de la fonction PHP, il remplace
t code> avec le fuseau horaire (car il est censé faire).
10-02-13est10: 21: 03 code> p>
t code> et ne pas remplacer par
est code>? p> p>
4 Réponses :
Votre format doit être: "C"
Format Descriptions Example c ISO 8601 date (added in PHP 5) 2004-02-12T15:19:21+00:00
Si vous utilisez DateTime code>, alors
$ date-> format (DateTime :: atom) code> est ce que vous voulez.
En outre, vous pouvez simplement utiliser la date ("C") code>, sous la date
, date () code> par défaut sur
TIME () CODE>, si le deuxième ARC n'est pas 't fourni.
Le format "Atom" est maintenant dédié (depuis PHP 7.2, je pense) mais une solution avec l'échappement t @Matteo suggérée fonctionne bien.
Vous pouvez formater les pièces de date et d'heure séparément, puis concaténez les deux parties avec "T" code>:
Si vous avez besoin d'insérer un caractère qui ne doit pas être interprété, suivez-le avec une barre oblique inverse:
$time = date("y-m-d\TH:i:s", time());
sortie: p> date_atom code> est fourni pour ce format: