Qual è la differenza tra $ user login e access?


10

Sto migrando gli utenti e ho trovato l' oggetto $ user .

Qual è la differenza tra il campo login e access? L'accesso viene aggiornato con ogni richiesta di pagina?

Risposte:


18

Il campo di accesso viene aggiornato nel gestore di scrittura della sessione di Drupal _drupal_session_write . Ciò significa che è potenzialmente aggiornato ad ogni richiesta di pagina. Se guardi il codice sorgente, vedrai che il campo di accesso è, per impostazione predefinita, aggiornato solo ogni 180 secondi. Questo intervallo può essere modificato impostando la session_write_intervalvariabile Drupal.

// Likewise, do not update access time more than once per 180 seconds.
if ($user->uid && REQUEST_TIME - $user->access > variable_get('session_write_interval', 180)) {
  db_update('users')
    ->fields(array(
    'access' => REQUEST_TIME,
  ))
    ->condition('uid', $user->uid)
    ->execute();
}

7

Secondo i commenti per i campi in user_schema():

access: Data / ora per l'utente precedente che accedeva al sito.

login: Data e ora dell'ultimo accesso dell'utente.

Quindi accessverrebbe aggiornato per ogni caricamento della pagina, loginsolo quando l'utente ha effettivamente effettuato l'accesso.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.