{"id":7494,"date":"2019-11-15T12:05:59","date_gmt":"2019-11-15T12:05:59","guid":{"rendered":"https:\/\/www.jose-aguilar.com\/blog\/?p=7494"},"modified":"2019-11-15T12:24:18","modified_gmt":"2019-11-15T12:24:18","slug":"como-saber-la-diferencia-entre-2-fechas-con-la-clase-datetime-de-php","status":"publish","type":"post","link":"https:\/\/www.jose-aguilar.com\/blog\/como-saber-la-diferencia-entre-2-fechas-con-la-clase-datetime-de-php\/","title":{"rendered":"Como saber la diferencia entre 2 fechas con la clase DateTime de PHP"},"content":{"rendered":"<p>En este art\u00edculo vas a descubrir como saber la <strong>diferencia entre 2 fechas<\/strong> utilizando la clase <em>DateTime<\/em> que tiene disponible <strong>PHP<\/strong>.<\/p>\n<p>Esta clase te puede alegrar el d\u00eda si necesitas comparar fechas, saber el tiempo transcurrido entre 2 fechas o saber el tiempo que falta para llegar a una determinada fecha.<\/p>\n<h2>Definici\u00f3n de la clase DateTime<\/h2>\n<p>La clase <em>DateTime<\/em> es una representaci\u00f3n completa de la fecha y la hora que ayuda much\u00edsimo a tratar los datos de tipo fecha y hora en tus rutinas.<\/p>\n<p>Puedes hacer infinidad de cosas con los m\u00e9todos que trae la propia clase tales como:<\/p>\n<ul>\n<li>A\u00f1adir una cantidad de d\u00edas, meses, a\u00f1os, horas, minutos y segundos a un objeto DateTime.<\/li>\n<li>Alterar la marca temporal.<\/li>\n<li>Establecer la fecha y hora.<\/li>\n<li>Cambiar la zona horaria para el objeto DateTime.<\/li>\n<li>Sustraer una cantidad de d\u00edas, meses, a\u00f1os, horas, minutos y segundos de un objeto DateTime.<\/li>\n<li>Y algunos detalles m\u00e1s.<\/li>\n<\/ul>\n<p>Puedes encontrar una documentaci\u00f3n m\u00e1s completa en <a href=\"https:\/\/www.php.net\/manual\/es\/class.datetime.php\" target=\"_blank\" rel=\"noopener noreferrer\">DateTime<\/a>.<\/p>\n<h2>Prop\u00f3sito &#8211; mostrar el tiempo transcurrido entre 2 fechas<\/h2>\n<p>En el caso de este tutorial, voy a partir de un ejemplo en funcionamiento que tiene 2 fechas: la fecha de creaci\u00f3n y la fecha de actualizaci\u00f3n.<\/p>\n<p>El objetivo principal de este art\u00edculo es saber la diferencia entre 2 fechas, mostrando en pantalla el n\u00famero de a\u00f1os, meses, d\u00edas, horas, minutos y segundos entre ambas fechas.<\/p>\n<p>Vas a descubrir cuanto tiempo ha pasado desde que se cre\u00f3 un elemento y lo voy a mostrar en pantalla de la forma siguiente:<\/p>\n<p>&#8212;<\/p>\n<p>Fecha de creaci\u00f3n: 2019-11-14 12:00:00<\/p>\n<p>Fecha de actualizaci\u00f3n: 2019-11-15 12:33:22<\/p>\n<p>Tiempo transcurrido: 1 d\u00eda 33 minutos 22 segundos.<\/p>\n<p>&#8212;<\/p>\n<p>Cada vez que se recarga la p\u00e1gina, el tiempo transcurrido se actualiza.<\/p>\n<p>De la misma forma, la fecha de actualizaci\u00f3n tambi\u00e9n se actualiza con la actual y la fecha de creaci\u00f3n se mantiene fija.<\/p>\n<h2>\u00bfC\u00f3mo conseguir mostrar el tiempo transcurrido entre 2 fechas?<\/h2>\n<p>La clase <em>DateTime<\/em> nos ayuda mucho en este trabajo. Dispone de un m\u00e9todo que permite directamente sacar la <strong>diferencia entre 2 fechas<\/strong>.<\/p>\n<p>En el ejemplo en funcionamiento voy a tener 2 fechas: la fecha de creaci\u00f3n que se trata de una fecha fija que representa precisamente el momento exacto en el que se cre\u00f3 el objeto.<\/p>\n<p>Imag\u00ednate que esta fecha pueda venir de una base de datos o estar guardada en alg\u00fan fichero o lo que se te ocurra.<\/p>\n<p>En el caso del ejemplo, voy a escribirlo directamente ya que no es el prop\u00f3sito de este tutorial.<\/p>\n<p>Observa lo siguiente:<\/p>\n<div id=\"wpshdo_1\" class=\"wp-synhighlighter-outer\"><div id=\"wpshdt_1\" class=\"wp-synhighlighter-expanded\"><table border=\"0\" width=\"100%\"><tr><td align=\"left\" width=\"80%\"><a name=\"#codesyntax_1\"><\/a><a id=\"wpshat_1\" class=\"wp-synhighlighter-title\" href=\"#codesyntax_1\"  onClick=\"javascript:wpsh_toggleBlock(1)\" title=\"Click to show\/hide code block\">Source code<\/a><\/td><td align=\"right\"><a href=\"#codesyntax_1\" onClick=\"javascript:wpsh_code(1)\" title=\"Show code only\"><img decoding=\"async\" border=\"0\" style=\"border: 0 none\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/themes\/default\/images\/code.png\" \/><\/a>&nbsp;<a href=\"#codesyntax_1\" onClick=\"javascript:wpsh_print(1)\" title=\"Print code\"><img decoding=\"async\" border=\"0\" style=\"border: 0 none\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/themes\/default\/images\/printer.png\" \/><\/a>&nbsp;<a href=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/About.html\" target=\"_blank\" title=\"Show plugin information\"><img decoding=\"async\" border=\"0\" style=\"border: 0 none\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/themes\/default\/images\/info.gif\" \/><\/a>&nbsp;<\/td><\/tr><\/table><\/div><div id=\"wpshdi_1\" class=\"wp-synhighlighter-inner\" style=\"display: block;\"><pre class=\"php\" style=\"font-family:monospace;\"><span class=\"kw1\">echo<\/span> <span class=\"st_h\">'&lt;p&gt;Fecha de creaci\u00f3n: 2019-11-14 12:00:00&lt;\/p&gt;'<\/span><span class=\"sy0\">;<\/span><\/pre><\/div><\/div>\n<p>La fecha de actualizaci\u00f3n va a ser la fecha en la que se est\u00e1 cargando la p\u00e1gina y ejecutando la rutina:<\/p>\n<div id=\"wpshdo_2\" class=\"wp-synhighlighter-outer\"><div id=\"wpshdt_2\" class=\"wp-synhighlighter-expanded\"><table border=\"0\" width=\"100%\"><tr><td align=\"left\" width=\"80%\"><a name=\"#codesyntax_2\"><\/a><a id=\"wpshat_2\" class=\"wp-synhighlighter-title\" href=\"#codesyntax_2\"  onClick=\"javascript:wpsh_toggleBlock(2)\" title=\"Click to show\/hide code block\">Source code<\/a><\/td><td align=\"right\"><a href=\"#codesyntax_2\" onClick=\"javascript:wpsh_code(2)\" title=\"Show code only\"><img decoding=\"async\" border=\"0\" style=\"border: 0 none\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/themes\/default\/images\/code.png\" \/><\/a>&nbsp;<a href=\"#codesyntax_2\" onClick=\"javascript:wpsh_print(2)\" title=\"Print code\"><img decoding=\"async\" border=\"0\" style=\"border: 0 none\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/themes\/default\/images\/printer.png\" \/><\/a>&nbsp;<a href=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/About.html\" target=\"_blank\" title=\"Show plugin information\"><img decoding=\"async\" border=\"0\" style=\"border: 0 none\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/themes\/default\/images\/info.gif\" \/><\/a>&nbsp;<\/td><\/tr><\/table><\/div><div id=\"wpshdi_2\" class=\"wp-synhighlighter-inner\" style=\"display: block;\"><pre class=\"php\" style=\"font-family:monospace;\"><span class=\"kw1\">echo<\/span> <span class=\"st_h\">'&lt;p&gt;Fecha de actualizaci\u00f3n: '<\/span><span class=\"sy0\">.<\/span><a href=\"http:\/\/www.php.net\/date\"><span class=\"kw3\">date<\/span><\/a><span class=\"br0\">&#40;<\/span><span class=\"st_h\">'Y-m-d H:i:s'<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">.<\/span><span class=\"st_h\">'&lt;\/p&gt;'<\/span><span class=\"sy0\">;<\/span><\/pre><\/div><\/div>\n<p>A continuaci\u00f3n, voy a instanciar 2 objetos de tipo <em>DateTime<\/em> para calcular la diferencia entre los 2 objetos:<\/p>\n<div id=\"wpshdo_3\" class=\"wp-synhighlighter-outer\"><div id=\"wpshdt_3\" class=\"wp-synhighlighter-expanded\"><table border=\"0\" width=\"100%\"><tr><td align=\"left\" width=\"80%\"><a name=\"#codesyntax_3\"><\/a><a id=\"wpshat_3\" class=\"wp-synhighlighter-title\" href=\"#codesyntax_3\"  onClick=\"javascript:wpsh_toggleBlock(3)\" title=\"Click to show\/hide code block\">Source code<\/a><\/td><td align=\"right\"><a href=\"#codesyntax_3\" onClick=\"javascript:wpsh_code(3)\" title=\"Show code only\"><img decoding=\"async\" border=\"0\" style=\"border: 0 none\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/themes\/default\/images\/code.png\" \/><\/a>&nbsp;<a href=\"#codesyntax_3\" onClick=\"javascript:wpsh_print(3)\" title=\"Print code\"><img decoding=\"async\" border=\"0\" style=\"border: 0 none\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/themes\/default\/images\/printer.png\" \/><\/a>&nbsp;<a href=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/About.html\" target=\"_blank\" title=\"Show plugin information\"><img decoding=\"async\" border=\"0\" style=\"border: 0 none\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/themes\/default\/images\/info.gif\" \/><\/a>&nbsp;<\/td><\/tr><\/table><\/div><div id=\"wpshdi_3\" class=\"wp-synhighlighter-inner\" style=\"display: block;\"><pre class=\"php\" style=\"font-family:monospace;\"><span class=\"re0\">$date_add<\/span> <span class=\"sy0\">=<\/span> <span class=\"kw2\">new<\/span> DateTime<span class=\"br0\">&#40;<\/span><span class=\"st_h\">'2019-11-14 12:00:00'<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span>\n<span class=\"re0\">$date_upd<\/span> <span class=\"sy0\">=<\/span> <span class=\"kw2\">new<\/span> DateTime<span class=\"br0\">&#40;<\/span><a href=\"http:\/\/www.php.net\/date\"><span class=\"kw3\">date<\/span><\/a><span class=\"br0\">&#40;<\/span><span class=\"st_h\">'Y-m-d H:i:s'<\/span><span class=\"br0\">&#41;<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span>\n<span class=\"re0\">$diff<\/span> <span class=\"sy0\">=<\/span> <span class=\"re0\">$date_add<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">diff<\/span><span class=\"br0\">&#40;<\/span><span class=\"re0\">$date_upd<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span><\/pre><\/div><\/div>\n<p>Seguidamente, creo una variable de tipo cadena que contendr\u00e1 el tiempo transcurrido en a\u00f1os, meses, d\u00edas, horas, minutos y segundos.<\/p>\n<p>Se puede conseguir as\u00ed:<\/p>\n<div id=\"wpshdo_4\" class=\"wp-synhighlighter-outer\"><div id=\"wpshdt_4\" class=\"wp-synhighlighter-expanded\"><table border=\"0\" width=\"100%\"><tr><td align=\"left\" width=\"80%\"><a name=\"#codesyntax_4\"><\/a><a id=\"wpshat_4\" class=\"wp-synhighlighter-title\" href=\"#codesyntax_4\"  onClick=\"javascript:wpsh_toggleBlock(4)\" title=\"Click to show\/hide code block\">Source code<\/a><\/td><td align=\"right\"><a href=\"#codesyntax_4\" onClick=\"javascript:wpsh_code(4)\" title=\"Show code only\"><img decoding=\"async\" border=\"0\" style=\"border: 0 none\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/themes\/default\/images\/code.png\" \/><\/a>&nbsp;<a href=\"#codesyntax_4\" onClick=\"javascript:wpsh_print(4)\" title=\"Print code\"><img decoding=\"async\" border=\"0\" style=\"border: 0 none\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/themes\/default\/images\/printer.png\" \/><\/a>&nbsp;<a href=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/About.html\" target=\"_blank\" title=\"Show plugin information\"><img decoding=\"async\" border=\"0\" style=\"border: 0 none\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/themes\/default\/images\/info.gif\" \/><\/a>&nbsp;<\/td><\/tr><\/table><\/div><div id=\"wpshdi_4\" class=\"wp-synhighlighter-inner\" style=\"display: block;\"><pre class=\"php\" style=\"font-family:monospace;\"><span class=\"kw1\">echo<\/span> <span class=\"st_h\">'Tiempo transcurrido: '<\/span><span class=\"sy0\">;<\/span>\n&nbsp;\n<span class=\"re0\">$time_elapsed<\/span> <span class=\"sy0\">=<\/span> <span class=\"st_h\">''<\/span><span class=\"sy0\">;<\/span>\n&nbsp;\n<span class=\"kw1\">if<\/span> <span class=\"br0\">&#40;<\/span><span class=\"re0\">$diff<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">y<\/span> <span class=\"sy0\">&gt;<\/span> 0 <span class=\"sy0\">&amp;&amp;<\/span> <span class=\"re0\">$diff<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">y<\/span> <span class=\"sy0\">!=<\/span> 1<span class=\"br0\">&#41;<\/span> <span class=\"br0\">&#123;<\/span>\n    <span class=\"re0\">$time_elapsed<\/span> <span class=\"sy0\">.=<\/span> <span class=\"re0\">$diff<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">y<\/span><span class=\"sy0\">.<\/span><span class=\"st_h\">' a\u00f1os '<\/span><span class=\"sy0\">;<\/span>\n<span class=\"br0\">&#125;<\/span>\n&nbsp;\n<span class=\"kw1\">if<\/span> <span class=\"br0\">&#40;<\/span><span class=\"re0\">$diff<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">m<\/span> <span class=\"sy0\">&gt;<\/span> 0<span class=\"br0\">&#41;<\/span> <span class=\"br0\">&#123;<\/span>\n    <span class=\"re0\">$time_elapsed<\/span> <span class=\"sy0\">.=<\/span> <span class=\"re0\">$diff<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">m<\/span><span class=\"sy0\">.<\/span><span class=\"st_h\">' meses '<\/span><span class=\"sy0\">;<\/span>\n<span class=\"br0\">&#125;<\/span>\n&nbsp;\n<span class=\"kw1\">if<\/span> <span class=\"br0\">&#40;<\/span><span class=\"re0\">$diff<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">days<\/span> <span class=\"sy0\">&gt;<\/span> 0 <span class=\"sy0\">&amp;&amp;<\/span> <span class=\"re0\">$diff<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">days<\/span> <span class=\"sy0\">!=<\/span> 1<span class=\"br0\">&#41;<\/span> <span class=\"br0\">&#123;<\/span>\n    <span class=\"re0\">$time_elapsed<\/span> <span class=\"sy0\">.=<\/span> <span class=\"re0\">$diff<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">days<\/span><span class=\"sy0\">.<\/span><span class=\"st_h\">' d\u00edas '<\/span><span class=\"sy0\">;<\/span>\n<span class=\"br0\">&#125;<\/span> <span class=\"kw1\">else<\/span> <span class=\"br0\">&#123;<\/span>\n    <span class=\"re0\">$time_elapsed<\/span> <span class=\"sy0\">.=<\/span> <span class=\"re0\">$diff<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">days<\/span><span class=\"sy0\">.<\/span><span class=\"st_h\">' d\u00eda '<\/span><span class=\"sy0\">;<\/span>\n<span class=\"br0\">&#125;<\/span>\n&nbsp;\n<span class=\"kw1\">if<\/span> <span class=\"br0\">&#40;<\/span><span class=\"re0\">$diff<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">h<\/span> <span class=\"sy0\">&gt;<\/span> 0 <span class=\"sy0\">&amp;&amp;<\/span> <span class=\"re0\">$diff<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">h<\/span> <span class=\"sy0\">!=<\/span> 1<span class=\"br0\">&#41;<\/span> <span class=\"br0\">&#123;<\/span>\n    <span class=\"re0\">$time_elapsed<\/span> <span class=\"sy0\">.=<\/span> <span class=\"re0\">$diff<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">h<\/span><span class=\"sy0\">.<\/span><span class=\"st_h\">' horas '<\/span><span class=\"sy0\">;<\/span>\n<span class=\"br0\">&#125;<\/span> <span class=\"kw1\">elseif<\/span> <span class=\"br0\">&#40;<\/span><span class=\"re0\">$diff<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">h<\/span> <span class=\"sy0\">==<\/span> 1<span class=\"br0\">&#41;<\/span> <span class=\"br0\">&#123;<\/span>\n    <span class=\"re0\">$time_elapsed<\/span> <span class=\"sy0\">.=<\/span> <span class=\"re0\">$diff<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">h<\/span><span class=\"sy0\">.<\/span><span class=\"st_h\">' hora '<\/span><span class=\"sy0\">;<\/span>\n<span class=\"br0\">&#125;<\/span>\n&nbsp;\n<span class=\"kw1\">if<\/span> <span class=\"br0\">&#40;<\/span><span class=\"re0\">$diff<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">i<\/span> <span class=\"sy0\">&gt;<\/span> 0  <span class=\"sy0\">&amp;&amp;<\/span> <span class=\"re0\">$diff<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">i<\/span> <span class=\"sy0\">!=<\/span> 1<span class=\"br0\">&#41;<\/span> <span class=\"br0\">&#123;<\/span>\n    <span class=\"re0\">$time_elapsed<\/span> <span class=\"sy0\">.=<\/span> <span class=\"re0\">$diff<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">i<\/span><span class=\"sy0\">.<\/span><span class=\"st_h\">' minutos '<\/span><span class=\"sy0\">;<\/span>\n<span class=\"br0\">&#125;<\/span> <span class=\"kw1\">elseif<\/span> <span class=\"br0\">&#40;<\/span><span class=\"re0\">$diff<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">i<\/span> <span class=\"sy0\">==<\/span> 1<span class=\"br0\">&#41;<\/span> <span class=\"br0\">&#123;<\/span>\n    <span class=\"re0\">$time_elapsed<\/span> <span class=\"sy0\">.=<\/span> <span class=\"re0\">$diff<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">i<\/span><span class=\"sy0\">.<\/span><span class=\"st_h\">' minuto '<\/span><span class=\"sy0\">;<\/span>\n<span class=\"br0\">&#125;<\/span>\n&nbsp;\n<span class=\"kw1\">if<\/span> <span class=\"br0\">&#40;<\/span><span class=\"re0\">$diff<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">s<\/span> <span class=\"sy0\">&gt;<\/span> 1 <span class=\"sy0\">&amp;&amp;<\/span> <span class=\"re0\">$diff<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">i<\/span> <span class=\"sy0\">!=<\/span> 1<span class=\"br0\">&#41;<\/span> <span class=\"br0\">&#123;<\/span>\n    <span class=\"re0\">$time_elapsed<\/span> <span class=\"sy0\">.=<\/span> <span class=\"st_h\">' '<\/span><span class=\"sy0\">.<\/span><span class=\"re0\">$diff<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">s<\/span><span class=\"sy0\">.<\/span><span class=\"st_h\">' segundos.'<\/span><span class=\"sy0\">;<\/span>\n<span class=\"br0\">&#125;<\/span> <span class=\"kw1\">else<\/span> <span class=\"br0\">&#123;<\/span>\n    <span class=\"re0\">$time_elapsed<\/span> <span class=\"sy0\">.=<\/span> <span class=\"re0\">$diff<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">s<\/span><span class=\"sy0\">.<\/span><span class=\"st_h\">' segundo.'<\/span><span class=\"sy0\">;<\/span>\n<span class=\"br0\">&#125;<\/span>\n&nbsp;\n<span class=\"kw1\">echo<\/span> <span class=\"re0\">$time_elapsed<\/span><span class=\"sy0\">;<\/span><\/pre><\/div><\/div>\n<p>Y con esto ya lo tienes.<\/p>\n<p>Este c\u00f3digo lo puedes utilizar en muchos casos y, como puedes observar, est\u00e1 bastante f\u00e1cil poder editarlo para armar lo que necesites en relaci\u00f3n al trabajo con fechas y horas.<\/p>\n<p style=\"text-align: center;\"><a class=\"btn btn-secondary\" href=\"https:\/\/www.jose-aguilar.com\/scripts\/php\/date-time-diff\/\" target=\"_blank\" rel=\"noopener noreferrer\"><i class=\"fa fa-eye\"><\/i> Ver demo<\/a> <a class=\"btn btn-primary broken_link\" href=\"https:\/\/www.jose-aguilar.com\/scripts\/php\/date-time-diff\/date-time-diff.zip\"><i class=\"fa fa-download\"><\/i> Descargar<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Descubre como saber la diferencia entre 2 fechas utilizando la clase DateTime que tiene disponible PHP. Compara fechas, muestra el tiempo transcurrido entre 2 fechas..<\/p>\n","protected":false},"author":1,"featured_media":7496,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[113,83],"class_list":["post-7494","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-php","tag-fechas","tag-relojes"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Como saber la diferencia entre 2 fechas con la clase DateTime de PHP - Jose Aguilar Blog<\/title>\n<meta name=\"description\" content=\"Descubre como saber la diferencia entre 2 fechas utilizando la clase DateTime que tiene disponible PHP. Compara fechas, muestra el tiempo transcurrido entre 2 fechas..\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Como saber la diferencia entre 2 fechas con la clase DateTime de PHP - Jose Aguilar Blog\" \/>\n<meta property=\"og:description\" content=\"Descubre como saber la diferencia entre 2 fechas utilizando la clase DateTime que tiene disponible PHP. Compara fechas, muestra el tiempo transcurrido entre 2 fechas..\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.jose-aguilar.com\/blog\/como-saber-la-diferencia-entre-2-fechas-con-la-clase-datetime-de-php\/\" \/>\n<meta property=\"og:site_name\" content=\"Jose Aguilar Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/joseaguilarblog\" \/>\n<meta property=\"article:published_time\" content=\"2019-11-15T12:05:59+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-11-15T12:24:18+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2019\/11\/date-time-diff.png\" \/>\n\t<meta property=\"og:image:width\" content=\"250\" \/>\n\t<meta property=\"og:image:height\" content=\"250\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Jose Aguilar\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@JoseAguilarBlog\" \/>\n<meta name=\"twitter:site\" content=\"@JoseAguilarBlog\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jose Aguilar\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/como-saber-la-diferencia-entre-2-fechas-con-la-clase-datetime-de-php\/\",\"url\":\"https:\/\/www.jose-aguilar.com\/blog\/como-saber-la-diferencia-entre-2-fechas-con-la-clase-datetime-de-php\/\",\"name\":\"Como saber la diferencia entre 2 fechas con la clase DateTime de PHP - Jose Aguilar Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/como-saber-la-diferencia-entre-2-fechas-con-la-clase-datetime-de-php\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/como-saber-la-diferencia-entre-2-fechas-con-la-clase-datetime-de-php\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2019\/11\/date-time-diff.png\",\"datePublished\":\"2019-11-15T12:05:59+00:00\",\"dateModified\":\"2019-11-15T12:24:18+00:00\",\"author\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/e6d485db1e1140866e95971d17105d11\"},\"description\":\"Descubre como saber la diferencia entre 2 fechas utilizando la clase DateTime que tiene disponible PHP. Compara fechas, muestra el tiempo transcurrido entre 2 fechas..\",\"breadcrumb\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/como-saber-la-diferencia-entre-2-fechas-con-la-clase-datetime-de-php\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.jose-aguilar.com\/blog\/como-saber-la-diferencia-entre-2-fechas-con-la-clase-datetime-de-php\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/como-saber-la-diferencia-entre-2-fechas-con-la-clase-datetime-de-php\/#primaryimage\",\"url\":\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2019\/11\/date-time-diff.png\",\"contentUrl\":\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2019\/11\/date-time-diff.png\",\"width\":250,\"height\":250,\"caption\":\"Diferencia entre fechas con PHP\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/como-saber-la-diferencia-entre-2-fechas-con-la-clase-datetime-de-php\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\/\/www.jose-aguilar.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Como saber la diferencia entre 2 fechas con la clase DateTime de PHP\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#website\",\"url\":\"https:\/\/www.jose-aguilar.com\/blog\/\",\"name\":\"Jose Aguilar Blog\",\"description\":\"Desarrollo Web con PrestaShop, WordPress, PHP, jQuery y Ajax\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.jose-aguilar.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/e6d485db1e1140866e95971d17105d11\",\"name\":\"Jose Aguilar\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/abbfef5f1d75260c549d0f2c2842bb697ba1aadff3b2836b39d2590c8a625415?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/abbfef5f1d75260c549d0f2c2842bb697ba1aadff3b2836b39d2590c8a625415?s=96&d=mm&r=g\",\"caption\":\"Jose Aguilar\"},\"description\":\"Director ejecutivo y tecnol\u00f3gico en JA Modules. Experto programador PrestaShop y Experto programador WordPress.\",\"sameAs\":[\"https:\/\/plus.google.com\/114357189801512615537\"],\"url\":\"https:\/\/www.jose-aguilar.com\/blog\/author\/josea902\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Como saber la diferencia entre 2 fechas con la clase DateTime de PHP - Jose Aguilar Blog","description":"Descubre como saber la diferencia entre 2 fechas utilizando la clase DateTime que tiene disponible PHP. Compara fechas, muestra el tiempo transcurrido entre 2 fechas..","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"og_locale":"es_ES","og_type":"article","og_title":"Como saber la diferencia entre 2 fechas con la clase DateTime de PHP - Jose Aguilar Blog","og_description":"Descubre como saber la diferencia entre 2 fechas utilizando la clase DateTime que tiene disponible PHP. Compara fechas, muestra el tiempo transcurrido entre 2 fechas..","og_url":"https:\/\/www.jose-aguilar.com\/blog\/como-saber-la-diferencia-entre-2-fechas-con-la-clase-datetime-de-php\/","og_site_name":"Jose Aguilar Blog","article_publisher":"https:\/\/www.facebook.com\/joseaguilarblog","article_published_time":"2019-11-15T12:05:59+00:00","article_modified_time":"2019-11-15T12:24:18+00:00","og_image":[{"width":250,"height":250,"url":"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2019\/11\/date-time-diff.png","type":"image\/png"}],"author":"Jose Aguilar","twitter_card":"summary_large_image","twitter_creator":"@JoseAguilarBlog","twitter_site":"@JoseAguilarBlog","twitter_misc":{"Escrito por":"Jose Aguilar","Tiempo de lectura":"4 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.jose-aguilar.com\/blog\/como-saber-la-diferencia-entre-2-fechas-con-la-clase-datetime-de-php\/","url":"https:\/\/www.jose-aguilar.com\/blog\/como-saber-la-diferencia-entre-2-fechas-con-la-clase-datetime-de-php\/","name":"Como saber la diferencia entre 2 fechas con la clase DateTime de PHP - Jose Aguilar Blog","isPartOf":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/como-saber-la-diferencia-entre-2-fechas-con-la-clase-datetime-de-php\/#primaryimage"},"image":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/como-saber-la-diferencia-entre-2-fechas-con-la-clase-datetime-de-php\/#primaryimage"},"thumbnailUrl":"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2019\/11\/date-time-diff.png","datePublished":"2019-11-15T12:05:59+00:00","dateModified":"2019-11-15T12:24:18+00:00","author":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/e6d485db1e1140866e95971d17105d11"},"description":"Descubre como saber la diferencia entre 2 fechas utilizando la clase DateTime que tiene disponible PHP. Compara fechas, muestra el tiempo transcurrido entre 2 fechas..","breadcrumb":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/como-saber-la-diferencia-entre-2-fechas-con-la-clase-datetime-de-php\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.jose-aguilar.com\/blog\/como-saber-la-diferencia-entre-2-fechas-con-la-clase-datetime-de-php\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.jose-aguilar.com\/blog\/como-saber-la-diferencia-entre-2-fechas-con-la-clase-datetime-de-php\/#primaryimage","url":"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2019\/11\/date-time-diff.png","contentUrl":"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2019\/11\/date-time-diff.png","width":250,"height":250,"caption":"Diferencia entre fechas con PHP"},{"@type":"BreadcrumbList","@id":"https:\/\/www.jose-aguilar.com\/blog\/como-saber-la-diferencia-entre-2-fechas-con-la-clase-datetime-de-php\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/www.jose-aguilar.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Como saber la diferencia entre 2 fechas con la clase DateTime de PHP"}]},{"@type":"WebSite","@id":"https:\/\/www.jose-aguilar.com\/blog\/#website","url":"https:\/\/www.jose-aguilar.com\/blog\/","name":"Jose Aguilar Blog","description":"Desarrollo Web con PrestaShop, WordPress, PHP, jQuery y Ajax","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.jose-aguilar.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Person","@id":"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/e6d485db1e1140866e95971d17105d11","name":"Jose Aguilar","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/abbfef5f1d75260c549d0f2c2842bb697ba1aadff3b2836b39d2590c8a625415?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/abbfef5f1d75260c549d0f2c2842bb697ba1aadff3b2836b39d2590c8a625415?s=96&d=mm&r=g","caption":"Jose Aguilar"},"description":"Director ejecutivo y tecnol\u00f3gico en JA Modules. Experto programador PrestaShop y Experto programador WordPress.","sameAs":["https:\/\/plus.google.com\/114357189801512615537"],"url":"https:\/\/www.jose-aguilar.com\/blog\/author\/josea902\/"}]}},"_links":{"self":[{"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/posts\/7494","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/comments?post=7494"}],"version-history":[{"count":0,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/posts\/7494\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/media\/7496"}],"wp:attachment":[{"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/media?parent=7494"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/categories?post=7494"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/tags?post=7494"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}