¿Cómo obtengo la marca de tiempo (fecha) desde la última ejecución cron?

11

Estoy construyendo un módulo pero estoy atascado. Necesito la marca de tiempo del cron anterior mientras ejecuto un trabajo hook_cron para poder verificar qué nodos son nuevos y enviarlos por correo electrónico.

Entonces necesito el sello de fecha / hora de la última ejecución cron pero ¿cómo llego allí?

VOLAR
fuente

Respuestas:

19

Se puede obtener una marca de tiempo UNIX de la última ejecución cron con:

variable_get('cron_last');

Si lo necesita, puede manipular fácilmente una marca de tiempo UNIX con la función de fecha de PHP .

Bart
fuente
3

La función hook_requirement () puede ayudarlo.

Mira esto: http://api.drupal.org/api/drupal/modules%21system%21system.api.php/function/hook_requirements/7

En su archivo de módulo, escriba la función hook_requirement ().

function hook_requirements($phase) {
if ($phase == 'runtime') {
    $cron_last = variable_get('cron_last');

    if (is_numeric($cron_last)) {
      $requirements['cron']['value'] = $t('Last run !time ago', array('!time' => format_interval(REQUEST_TIME - $cron_last)));
    }
    else {
      $requirements['cron'] = array(
        'description' => $t('Cron has not run. It appears cron jobs have not been setup on your system. Check the help pages for <a href="@url">configuring cron jobs</a>.', array('@url' => 'http://drupal.org/cron')), 
        'severity' => REQUIREMENT_ERROR, 
        'value' => $t('Never run'),
      );
    }

    $requirements['cron']['description'] .= ' ' . $t('You can <a href="@cron">run cron manually</a>.', array('@cron' => url('admin/reports/status/run-cron')));

    $requirements['cron']['title'] = $t('Cron maintenance tasks');
  }
}
mohit_rocks
fuente
útil pero me gusta más la respuesta de Bart porque es más simple +1
VUELO
hook_requirements () solo se invoca para la fase de "tiempo de ejecución" desde la devolución de llamada de la página del informe de estado (cf, api.drupal.org/api/drupal/modules%21system%21system.api.php/… ). No veo cómo esto ayudaría a determinar qué nodos son nuevos.
mpdonadio