Maison  >  Article  >  base de données  >  Comment supprimer automatiquement les lignes MySQL en fonction du temps à l'aide d'une tâche Cron et de PHP ?

Comment supprimer automatiquement les lignes MySQL en fonction du temps à l'aide d'une tâche Cron et de PHP ?

Susan Sarandon
Susan Sarandonoriginal
2024-10-28 04:33:30511parcourir

How to Automatically Delete MySQL Rows Based on Time Using a Cron Job and PHP?

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn