Comment obtenir l'horodatage (date) depuis la dernière exécution cron?

11

Je suis en train de construire un module mais je suis bloqué .. J'ai besoin de l'horodatage du cron précédent pendant que j'exécute un travail hook_cron pour pouvoir vérifier quels nœuds sont nouveaux et les envoyer par e-mail.

J'ai donc besoin de la date / heure de la dernière exécution cron, mais comment puis-je y arriver?

MOUCHE
la source

Réponses:

19

Un horodatage UNIX de la dernière exécution cron peut être récupéré avec:

variable_get('cron_last');

Si vous en avez besoin, vous pouvez facilement manipuler un horodatage UNIX avec la fonction de date de PHP .

Bart
la source
3

La fonction hook_requirement () peut vous aider.

Vérifiez ceci: http://api.drupal.org/api/drupal/modules%21system%21system.api.php/function/hook_requirements/7

Dans votre fichier de module, écrivez la fonction 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
la source
serviable mais j'aime mieux la réponse de bart car c'est plus simple +1
FLY
hook_requirements () est uniquement invoqué pour la phase "runtime" à partir du rappel de la page de rapport d'état (cf. api.drupal.org/api/drupal/modules%21system%21system.api.php/… ). Je ne vois pas comment cela pourrait aider à déterminer quels nœuds sont nouveaux.
mpdonadio