Time() de PHP pour Google Agenda les Dates de format de l'heure
J'ai PHP temps pour le début et la fin d'un événement. C'est un simple <?php time(); ?>
pour l'avenir de la date de début et de fin des temps. Je me demandais si quelqu'un connaissait un moyen de prendre soit le format numérique (time () en PHP) ou la prise de certains valeur de chaîne représentant l'époque (je pourrais faire un strtotime($sometimevalue);
) et d'en faire le nécessaire Google Agenda format de l'heure.
Assez parler, voici un exemple du format de l'heure:
20150107T003000Z/20150107T023000Z
Cela équivaut à 6 janvier 2015 à 5:30 PM à 6 janvier 2015 à 7:30PM.
Si quelqu'un peut m'expliquer comment traduire une time()
à ce format?
Les choses qui me confondre sont, l'événement est sur Jan 6, mais le format de l'heure dit "20150107T'. Je pense qu'il serait
20150106T
Aussi, le temps postfaces être 003000Z
pour 5:30 pm à 023000Z
pour 7:30 pm. C'est juste difficile pour moi de dire d'où ces chiffres sont générés à partir de.OriginalL'auteur Michael | 2011-04-15
Vous devez vous connecter pour publier un commentaire.
Solution de travail, prises de http://php.net/manual/en/function.date.php
Le crédit va à Boris Korobkov.
Arrière-plan:
À partir de
http://www.ibm.com/developerworks/opensource/library/os-php-xpath/
J'ai vu
"La publié et mis à jour des éléments de l'utilisation de la RFC 3339 d'horodatage au format. "
Et pensé que je devrais google "rfc3339 PHP" trouver une fonction qui implémente ce format
OriginalL'auteur Joe Goggins
Essayez ceci:
La première ligne définit le fuseau horaire par défaut à utiliser pour être UTC (c'est le "Z" à la fin de la mise en forme des temps:
Z = "Zulu Time"
). J'ai fait cela car je ne sais pas si Google s'attend à une heure UTC ou non. Si vous pouvez utiliser d'autres fuseaux horaires, vous pouvez utiliser l'un de l'autre fuseau horaire formats disponibles.Dans la ligne suivante, j'utilise
date
pour formater la timestamp Unix (quand pas de timestamp est passé àdate
la valeur par défaut à l'heure actuelle - c'est à diretime()
). Je vais casser à part pour vous:Y
- Les quatre chiffres de l'année.m
- Les deux chiffres (y compris zéro, si nécessaire) moisd
- Les deux chiffres (y compris zéro, si nécessaire) jour du mois\T
- Le caractère littéralT
, qui est un séparateur permettant d'identifier la portion de la date de début. La barre oblique est d'échapper à la T, comme il est par ailleurs utilisé pour afficher l'abréviation du fuseau horaire (par exemple, "TVP")H
- Les deux chiffres (y compris zéro, si nécessaire) heurei
- Les deux chiffres (y compris zéro, si nécessaire) minutess
- Les deux chiffres (y compris zéro, si nécessaire) deuxième\Z
- Le caractère littéralZ
, indiquant zulu comme discuté ci-dessus. La barre oblique est d'échapper à la T, comme il est par ailleurs utilisé pour afficher le fuseau horaire en secondes de l'heure UTC.De référence, et pour être sûr que j'ai interprété la question avec précision, ce code:
Actuellement à l'affiche ce résultat:
Je note que vous pouvez également utiliser
gmdate()
en place dedate()
et d'éliminer la nécessité pour lesdate_default_timezone_set()
appel, depuisgmdate()
renvoie le résultat dans l'heure GMT. Je n'hésite pas à le mentionner parce que je n'ai jamais été à 100% clair sur la différence, le cas échéant, entre le GMT et UTC, en particulier avec d'autres fuseaux horaires/périodes comme BST (British Summer Time) et la façon dont ils modifient GMT, le cas échéant. Si quelqu'un pouvait préciser cette question dans les commentaires, je vous serais très reconnaissant.time()
.Vous avez absolument raison. Si vous laissez de côté le deuxième paramètre,
date
par défaut, la date/heure actuelle. J'ai été le tester avec une valeur de chaîne, et je suppose que j'ai eu un brainfart quand je l'ai changé. Merci, je vais mettre à jour la réponse.Hmm. J'aime cette. Je suis actuellement en utilisant un javascript de mise en œuvre que j'ai trouvé sur google. J'ai pu l'essayer pour vérifier qu'il fonctionne 🙂
Eh bien, je vais vérifier cela fonctionne maintenant... ill vous laisser savoir!
OriginalL'auteur AgentConundrum
C'est un peu vieux, mais Google s'attend à gagner du temps dans la norme ISO 8601. Exemple :
SOURCE
OriginalL'auteur Nikola Loncar