tengo 1 cadena como 8/29/2011 11:16:12 AM
quiero guardar en variables como $ dat = 8/29/2011 y $ TME = 11:16:12 AMComo llegar hora y la fecha del sello de fecha y hora en php
cómo sería posible? ¿Me puedes dar un ejemplo?
tengo 1 cadena como 8/29/2011 11:16:12 AM
quiero guardar en variables como $ dat = 8/29/2011 y $ TME = 11:16:12 AMComo llegar hora y la fecha del sello de fecha y hora en php
cómo sería posible? ¿Me puedes dar un ejemplo?
E.g.
<?php
$s = '8/29/2011 11:16:12 AM';
$dt = new DateTime($s);
$date = $dt->format('m/d/Y');
$time = $dt->format('H:i:s');
echo $date, ' | ', $time;
ver http://docs.php.net/class.datetime
de edición: Para mantener la AM/PM uso formato
$time = $dt->format('h:i:s A');
Esto debería hacer el truco:
$mystring_datetime = ....;
$dt = DateTime::createFromFormat('m/d/Y H:i:s A', $mystring_datetime);
$d = $dt->format('m/d/Y');
$t = $dt->format('H:i:s A');
También puede hacer algo como esto, pero 'S no forma preferida:
$mystring_datetime = ....;
list($date, $time) = explode(' ', $mystring_datetime, 2);
Ahora, $date
y $time
tienen valores apropiados ...
Si su versión de PHP es bastante nueva, echa un vistazo a date_parse() y la matriz que devuelve. Puede formatear porciones de fecha u hora usando las entradas correspondientes.
Probablemente esta no sea la forma más limpia de hacerlo, pero puede utilizar un explosivo (tenga en cuenta que NO hay ninguna validación aquí). Será más rápido que una manipulación de fecha adecuada.
$str = '8/29/2011 11:16:12 AM';
$dates = explode(' ', $str);
$dat = $dates[0];
$time = $dates[1];
Si esto es posible, y el ejemplo perfecto se puede encontrar aquí http://php.net/manual/en/function.date.php
Buena suerte,
<?php
$date = strtotime('8/29/2011 11:16:12 AM');
$dat = date('m/d/y', $date);
$tme = date('H:m:s A',$date);
?>
Para obtener más información acerca de la función date(), PLZ visitar http://php.net/manual/en/function.date.php
Puede usar la función strtotime, siempre que las fechas sean posteriores al 1/1/1970 -
<?php
$s = strtotime('8/29/2011 11:16:12 AM');
$date = date('m/d/Y', $s);
$time = date('H:i:s A', $s);
?>
http://php.net/manual/en/function.strtotime.php
strtotime crea una marca de tiempo UNIX de la cadena que se pasa a ella.
thnx por respuesta funciona bien ..... – user1153176