(PECL paradox >= 1.4.0)
px_timestamp2string — Convertit un timestamp en une chaîne de caractères
$pxdoc
, float $value
, string $format
) : stringConvertit un timestamp tel que stocké dans un fichier Paradox en un format humainement lisible. Les timestamps Paradox sont le nombre de millisecondes depuis le 0001-01-02. Cette fonction peut facilement être remplacée par des fonctions mathématiques et de calendriers tel qu'utilisées dans l'exemple ci-dessous.
pxdoc
Identifiant de la ressource de la base de données.
value
Valeur comme stockée dans un champ de base de données Paradox de type PX_FIELD_TIME ou PX_FIELD_TIMESTAMP.
format
Format similaire au format utilisé par la fonction date(). Les caractères spéciaux supportés par cette fonction sont une partie de ceux supportés par la fonction date() (Y, y, m, n, d, j, H, h, G, g, i, s, A, a, L).
Cette fonction retourne TRUE
en cas de succès ou FALSE
si une erreur survient.
Exemple #1 Convertit un timestamp Paradox en un format humainement lisible
<?php
$px = px_new();
/* assignement d'une date telle qu'elle peut être stockée dans */
/* un champ date d'une base de données Paradox. */
/* 700000 jours depuis le 1.1.0000. */
$days = 700000;
/* Utilisation des fonctions de calendriers pour afficher */
/* un format humainement lisible de la date */
echo jdtogregorian($days+1721425)."\n";
/* Convertit en un timestamp tel que stocké dans une base de données Paradox */
/* Timestamps sont stockés en millisecondes depuis le 0001-01-02 */
$stamp = $days * 86400.0 * 1000.0;
/* Ajout d'une heure */
$stamp += 3600000.0;
/* Affichera : '7/15/1917 01:00:00'. */
echo px_timestamp2string($px, $stamp, "n/d/Y H:i:s")."\n";
px_delete($px);
?>
L'exemple ci-dessus va afficher :
7/15/1917 7/15/1917 01:00:00
Le nombre de jours Julien tel que passé à la fonction jdtogregorian() a une base différente de 1.1.4714 b.c. et doit être calculé en ajoutant 1721425 au nombre de jours utilisé dans le fichier Paradox. Le fait de convertir un nombre de jours en un timestamp est facile ; il suffit de le multiplier par 86400000.0 pour obtenir des millisecondes.