Le tableau de bord de l'Interface d'administration Bootstrap doit jongler avec différents formats de date et d'heure en fonction de la situation. Voici comment cela fonctionne.
Liste des formats de date, d'heure et de temps utilisés en PHP CRUD Generator
Pages | Utilisation | Langue | Format |
---|---|---|---|
LIRE les listes | Date lisible par l'homme et traduite dans la langue de l'utilisateur | PHP avec l'extension intl activée | USI * |
LIRE les listes | Date lisible par l'homme NON traduite | PHP sans l'extension intl activée | Format de date PHP ** |
Formulaires CREATE / UPDATE | Plugins Datepicker | Javascript | Formats du plugin Pickadate *** |
Objets PHP | Champs de la base de données relatifs à la date, à l'heure et à l'intervalle de temps | PHP/MySQL | Y-m-d H:i:s |
*USIC - https://unicode-org.github.io/icu-docs/apidoc/released/icu4c/classSimpleDateFormat.html#details
**Laliste des formats de date de PHP : https://www.php.net/manual/en/function.date.php
***Laliste des formats de date de Pickadate : https://amsul.ca/pickadate.js/date/
Les formats de date et d'heure du générateur et du panneau d'administration
Lorsque vous définissez un format de date / heure dans un générateur READ list, votre choix est stocké dans un fichier interne(generator/database/phpcg/[votre_table].json).
Le format stocké est le format Javascript
Les sélecteurs de date et d'heure du formulaire d'administration utiliseront ce format, + un champ caché avec un suffixe"_submit" pour envoyer les valeurs au format date/heure MySQL.
Le modèle de liste TWIG READ devra ensuite convertir la date et l'heure de la valeur MySQL au format lisible par l'homme.
Pour cela, le format Javascript est converti par le générateur en PHP ICU par generator/class/generator/TemplatesUtilities.php. Le format PHP ICU généré sera passé comme argument dans le modèle TWIG pour convertir la date / heure MySQL au format lisible par l'homme.
La fonction est pickerdateToPhpdate($pickerdate)
La classe d'objet construit la valeur de l'objet en utilisant le format PHP/MySQL (pas de conversion de format).
le modèle TWIG READ list appelle la fonction formatDate($date, $format)
dans vendor/twig/twig/lib/Twig/Extension/CrudTwigExtension.php
La donnée $date
est au format PHP/MySQL et peut être une date, une heure ou une période de temps.
Le format $format
donné est le format ICU.
IntlDateFormatter::formatObject(
) en utilisant Locale::getDefault()
Les dates ci-dessous sont générées à partir d'un format aléatoire en utilisant la même logique que le générateur CRUD.