¿Cuál es la diferencia entre $ user login y access?

10

Estoy migrando usuarios y me encontré con el objeto $ user .

¿Cuál es la diferencia entre el campo de inicio de sesión y acceso? ¿Se actualiza el acceso con cada solicitud de página?

uwe
fuente

Respuestas:

18

El campo de acceso se actualiza en el controlador de escritura de sesión de Drupal _drupal_session_write . Esto significa que se actualiza potencialmente en cada solicitud de página. Si observa el código fuente, verá que el campo de acceso , por defecto, solo se actualiza cada 180 segundos. Este intervalo se puede cambiar configurando la session_write_intervalvariable 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();
}
Oswald
fuente
7

Según los comentarios para los campos en user_schema():

access: Indicación de fecha y hora del usuario anterior en el que accedió al sitio.

login: Marca de tiempo para el último inicio de sesión del usuario.

Por accesslo tanto , se actualizaría para cada carga de página, loginsolo cuando el usuario realmente haya iniciado sesión.

Clive
fuente