Réponse modifiée
Si vous souhaitez utiliser un TIMESTAMP
normal champ dans MySQL, créez d'abord le champ.
ALTER TABLE `YourTable` ADD `LastAccessed` TIMESTAMP ON UPDATE CURRENT_TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ;
Une fois que vous avez configuré le champ, vous pouvez le laisser seul. Lorsque vous insérez une passe d'enregistrement null
comme valeur et il sera par défaut à l'heure actuelle. Lorsque vous mettez à jour l'enregistrement, l'heure sera ajustée.
Pour obtenir l'heure à partir du TIMESTAMP
champ, vous devrez exécuter votre requête de sélection et obtenir vos résultats. À des fins d'illustration, cela ressemblerait à ceci :
//Integrate this into your existing code
$result = mysqli_query($connection, "SELECT LastAccessed FROM YourTable"); //get only the time field for this example
$row = mysqli_fetch_array($result);
$time = new DateTime($row['LastAccessed']); //The constructor accepts the time information as an argument
echo $time->format("H:i:s"); //This is your time information.
Puisque vous avez un TIMESTAMP
champ maintenant, non seulement la base de données se chargera de le mettre à jour avec l'heure correcte, mais vous pouvez toujours modifier le $time->format()
l'argument de la méthode pour produire une chaîne avec des données temporelles de différentes manières.
L'horodatage est abstrait et votre application gagne en flexibilité.
Gagnant-gagnant, non ?
Réponse originale
Créer un char(8)
colonne dans MySQL, puis envoyez-lui la sortie d'un appel à :
date("H:i:s");
Bien que l'utilisation d'un champ d'horodatage dans MySQL soit optimale, étant donné que vous pouvez le mettre à jour lorsque l'enregistrement interagit avec. Vous n'avez pas pour utiliser l'horodatage complet.