Suppression automatique des lignes MySQL en fonction du temps à l'aide de la tâche Cron
Le scénario présenté pose un défi : supprimer des lignes d'une base de données MySQL où le Le champ "Date" tombe en dessous de la date actuelle, avec l'exigence que le script s'exécute automatiquement à minuit tous les jours, sans aucune intervention de l'utilisateur. Cet article présentera une solution utilisant un script PHP et une tâche cron.
Script PHP pour la suppression de données
Créez un script PHP nommé "cronjobcommand.php" avec le code suivant :
<code class="php"><?php include 'your_db_connection'; mysql_query("DELETE FROM your_table_name WHERE Date < NOW()"); ?></code>
Ce script établit une connexion à la base de données MySQL à l'aide de l'instruction include. Il exécute ensuite une requête qui supprime toutes les lignes de la table spécifiée où le champ "Date" est inférieur à la date et à l'heure actuelles (obtenues à l'aide de NOW()).
Configuration de la tâche Cron
Une fois le script PHP terminé, vous devez configurer une tâche cron pour l'exécuter quotidiennement à minuit. La commande de tâche cron pour cela serait :
0 0 * * * /usr/local/bin/php /path/to/cronjobcommand.php
Dans cette commande, "0 0" représente 00h00 (minuit), "*" désigne chaque jour du mois, de la semaine et de l'année, et "/usr/local/bin/php" est le chemin d'accès à l'exécutable PHP sur votre système. Ajustez "/path/to/cronjobcommand.php" au chemin réel de votre script PHP.
Après avoir enregistré la commande cron job dans le fichier crontab, le script s'exécutera automatiquement tous les jours à minuit, supprimant les lignes de la table MySQL en fonction des critères de date spécifiés sans aucune intervention manuelle.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!