2011-08-26 11 views
24

En una de mis entidades, tengo una propiedad protegida llamada insert_date que es una fecha y hora.Obtener la fecha como una cadena del objeto datetime en la doctrina 2

Cuando extraigo los datos después, no obtengo la fecha como una cadena, obtengo un objeto. Mi volcado var:

<pre class='xdebug-var-dump' dir='ltr'> <b>object</b>(<i>DateTime</i>)[<i>1560</i>] <i>public</i> 'date' <font color='#888a85'>=&gt;</font> <small>string</small> <font color='#cc0000'>'2011-08-26 12:40:29'</font> <i>(length=19)</i> <i>public</i> 'timezone_type' <font color='#888a85'>=&gt;</font> <small>int</small> <font color='#4e9a06'>3</font> <i>public</i> 'timezone' <font color='#888a85'>=&gt;</font> <small>string</small> <font color='#cc0000'>'Europe/London'</font> <i>(length=13)</i> </pre><pre class='xdebug-var-dump' dir='ltr'> <b>object</b>(<i>DateTime</i>)[<i>1571</i>] <i>public</i> 'date' <font color='#888a85'>=&gt;</font> <small>string</small> <font color='#cc0000'>'2011-08-26 12:40:29'</font> <i>(length=19)</i> <i>public</i> 'timezone_type' <font color='#888a85'>=&gt;</font> <small>int</small> <font color='#4e9a06'>3</font> <i>public</i> 'timezone' <font color='#888a85'>=&gt;</font> <small>string</small> <font color='#cc0000'>'Europe/London'</font> <i>(length=13)</i> 

he intentado:

foreach($dateObj as $date) { 

} 

Pero no extrae ... ¿Cómo puedo obtener la propiedad datan de este objeto? Incluso $insert_date->date no funciona.

Respuesta

50

uso

if($dateObj) 
{ 
    $dateObj->format('Y-m-d H:i:s'); 
} 
+0

Error fatal: ¿Llamar a un formato de función de miembro() en un objeto no? –

+4

Algunos de sus registros pueden tener 'NULL' en el db. Comprobar '$ dateObj' no está vacío antes de formatearlo:' if (! Empty ($ dateObj)) $ dateObj-> format (...) '. – J0HN

+0

John tiene razón, código actualizado –

13

Para asegurarse de que su $ objFecha es un uso de fecha y hora obj real:

if($dateObj instanceof \DateTime){ 
    $dateObj->format('Y-m-d H:i:s'); 
} 

usando "instanceof" comprueba que el objeto tendrá la función de formato requerido por lo tanto suele tiro errores si no es así.

Cuestiones relacionadas