Saltar al contenido

filectime()

¿Qué es la función filectime()?

La función filectime() es una función integrada de PHP que devuelve la hora de cambio del nodo de índice (inode) de un archivo. Esta función devuelve una marca de tiempo Unix que representa la hora en que los metadatos del archivo (como permisos o propiedad) se modificaron por última vez. Ten en cuenta que filectime() no rastrea las modificaciones del contenido; para obtener la hora de la última modificación del contenido, utiliza filemtime() en su lugar.

A continuación se muestra la sintaxis básica de la función filectime():

La sintaxis de PHP de filectime()

php
filectime(filename);

Donde filename es el nombre del archivo que se va a comprobar.

¿Cómo utilizar la función filectime()?

Utilizar la función filectime() es sencillo. Sigue estos pasos:

  1. Llama a la función filectime(), pasando como argumento el nombre del archivo que deseas comprobar.
  2. La función devolverá una marca de tiempo Unix que representa la hora de cambio del nodo de índice, o false en caso de error.
  3. Puedes formatear la marca de tiempo Unix utilizando la función date() para mostrar la hora en un formato más legible.

A continuación se muestra un fragmento de código de ejemplo que demuestra cómo utilizar la función filectime():

¿Cómo utilizar la función filectime()?

php
<?php

$filename = 'myfile.txt';
$last_change_time = filectime($filename);

if ($last_change_time !== false) {
    $change_time_string = date('F d Y H:i:s', $last_change_time);
    echo "The file $filename had its inode changed on $change_time_string";
} else {
    echo "Could not retrieve inode change time for $filename.";
}

Nota: El parámetro filename acepta tanto rutas relativas como absolutas. Si utilizas una ruta relativa, se resuelve en relación con el directorio de trabajo actual.

En este ejemplo, comprobamos la hora de cambio del nodo de índice de myfile.txt mediante la función filectime(). Almacenamos la marca de tiempo Unix devuelta en la variable $last_change_time. El código primero verifica que la función no haya devuelto false, luego formatea la marca de tiempo con date(). Ten en cuenta que date() depende de la zona horaria predeterminada del servidor; utiliza date_default_timezone_set() si necesitas una salida con una zona horaria específica. Finalmente, mostramos un mensaje que indica cuándo se modificaron por última vez los metadatos del archivo.

Conclusión

La función filectime() es una herramienta útil en PHP para comprobar cuándo se modificó por última vez el nodo de índice o los metadatos de un archivo. Siguiendo los pasos descritos en esta guía, podrás utilizar filectime() fácilmente en tus proyectos PHP. Recuerda utilizar filemtime() si necesitas específicamente la hora de la última modificación del contenido.

Practice

¿Qué hace la función filectime() en PHP?

¿Te resulta útil?

Vista previa dual-run — compárala con las rutas Symfony en producción.