(PECL paradox >= 1.4.0)
px_timestamp2string — Convertir la fecha y la hora en una cadena.
$pxdoc
, float $value
, string $format
)Convierte una fecha y hora tal como fué almenacenada en el archivo paradox, en un formato legible por humanos. Las marcas de tiempo paradox son el número de milisegundos transcurridos desde el 0001-01-02. Esta función es sólo por conveniencia. Esta puede ser fácilmente reemplazada por algunas funciones matemáticas y de calendario como se demuestra en el siguiente ejemplo.
pxdoc
Identificador de recursos de la base de datos paradox.
value
Valor almacenado en la base de datos paradox de tipo de campo PX_FIELD_TIME, o PX_FIELD_TIMESTAMP.
format
Formato de cadena similar al formato utilizado por la función date(). Los marcadores de posición soportados por esta función es un subconjunto de los soportados por la función date() (Y, y, m, n, d, j, H, h, G, g, i, s, A, a, L).
Devuelve TRUE
en caso de éxito o FALSE
en caso de error.
Ejemplo #1 Conversión de una fecha y hora paradox en un formato legible por humanos
<?php
$px = px_new();
/* componer una fecha tal y como podría ser almacenada en */
/* un campo de fecha de una base de datos paradox */
/* 700000 días desde el 1.1.0000. */
$days = 700000;
/* Utilización de las funciones de calendario para imprimir una */
/* fecha en un formato legible por humanos */
echo jdtogregorian($days+1721425)."\n";
/* Convertirla en una marca de tiempo tal y como fue almacenada en la base de datos paradox */
/* Las marcas de tiempo se almacenan en milisegundos desde el 0001-01-02 */
$stamp = $days * 86400.0 * 1000.0;
/* Añadir una hora */
$stamp += 3600000.0;
/* La salida será la siguiente '7/15/1917 01:00:00'. */
echo px_timestamp2string($px, $stamp, "n/d/Y H:i:s")."\n";
px_delete($px);
?>
El resultado del ejemplo sería:
7/15/1917 7/15/1917 01:00:00
La cuenta de la fecha juliana pasada a la función jdtogregorian() tiene una base diferente de 1.1.4714 a. C. y por lo tanto debe calcularse añadiendo 1721425 a la cuenta de días utilizados en el archivo paradox. En cuanto el número de días en una fecha y hora se hace fácilmente multiplicando por 86400000.0 para obtener milisegundos.