Bueno, ya lo solucioné..
estuve buscando como trabajaba el formato time de unix asi que puse
<?php echo date('Y-m-d', 1); ?>
y así hasta llegar a 10000 que era el valor por dia ya que el resto son minutos, horas, segundos y centecimas de segundo.. pero pude ver un desface de 1 dia por cada 135 dias asi que no me sirvió
.. busqué y encontré muchas funciones como por ejemplo strftime, mktime, gmmktime, etc.. al final que pude ver una que meajustaba a lo que necesitaba: "mktime".
Pude ver que podias asignar una variable con una fecha en formato unix:
<?php echo date("M-d-Y", mktime(0, 0, 0, 12, 32, 1997)); ?>
Pero intenté dar valores nulos y solo proporcionar el dia, no sabia si funcionaría ya que se supone el dia debería ser del 1 al 31 o por lo menos no lo especificaba en ningun lado pero lo intenté...
<?php echo date("M-d-Y", mktime(null, null, null, null, '39818', null, null)); ?>
Biieennn!! ahora solo es cuestión de restarle el desface de fecha entre el primer dia del formato unix al primer dia del formato excel:
http://support.microsoft.com/kb/214094el número de serie 1 representa 1/1/1900
pruebo..
<?php echo date("M-d-Y", mktime(null, null, null, null, '1', null, null)); ?>
Tengo la fecha "Dec-01-1999" y "1/1/1900" asi que lo resté en valores de dias y saqué el valor "
36495"
Ya con estos datos puedo hacer mi función:
function exceldate2timephp($int_exceldate){
return mktime(null, null, null, null, $int_exceldate - '36495', null, null); }
Uso:
<?php
echo date("M-d-Y", exceldate2timephp
('39818'));
function exceldate2timephp($int_exceldate){
return mktime(null, null, null, null, $int_exceldate - '36495', null, null); }
?>
Ojala que a alguien le pueda servir como a mi.