Quiero insertar la hora actual en la base de datos usando la función mySQL NOW () en el registro activo de Codeigniter. La siguiente consulta no funcionará:
$data = array(
'name' => $name ,
'email' => $email,
'time' => NOW()
);
$this->db->insert('mytable', $data);
Esto se debe a que la clase ActiveRecord de CodeIgniter escapa automáticamente de la entrada.
Lo siguiente funciona bien, llamando a set () y pasando el parámetro FALSE, para que no escape NOW ().
$data = array(
'name' => $name ,
'email' => $email,
);
$this->db->set('time', 'NOW()', FALSE);
$this->db->insert('mytable', $data);
Sin embargo, mi pregunta es: ¿hay alguna otra forma que no sea esta? Por ejemplo, ¿puedo usarlo de alguna manera agregando todo en la matriz de datos solamente? Por ejemplo, algo como:
$data = array(
'name' => $name ,
'email' => $email,
'time' => NOW(), FALSE
);
strtotime
? Por ejemplo,echo date("N", strtotime('now'));
le dará la fecha de hoy, consulte php.net/strtotime y php.net/date