Maison >développement back-end >tutoriel php >Comment puis-je afficher efficacement le temps écoulé depuis un horodatage donné en PHP ?

Comment puis-je afficher efficacement le temps écoulé depuis un horodatage donné en PHP ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-16 06:09:19483parcourir

How Can I Efficiently Display Time Elapsed Since a Given Date-Time Stamp in PHP?

Détermination du temps écoulé à partir d'un horodatage date-heure en PHP

Lorsque vous traitez des données date-heure, il est souvent essentiel de calculer le temps écoulé temps depuis un moment précis dans le passé. Cette question pratique cherche à trouver une méthode efficace pour convertir un horodatage tel que "2010-04-28 17:25:43" dans un format convivial tel que "il y a xx minutes" ou "il y a xx jours". 🎜>

Pour résoudre ce problème efficacement, envisagez la solution suivante :

$time = strtotime('2010-04-28 17:25:43');

echo 'Event occurred ' . humanTiming($time) . ' ago';

function humanTiming($time) {
    $time = time() - $time;
    $time = ($time < 1) ? 1 : $time;
    $units = [
        31536000 => 'year',
        2592000 => 'month',
        604800 => 'week',
        86400 => 'day',
        3600 => 'hour',
        60 => 'minute',
        1 => 'second',
    ];

    foreach ($units as $unit => $text) {
        if ($time < $unit) {
            continue;
        }

        $numUnits = floor($time / $unit);

        return "$numUnits $text" . (($numUnits > 1) ? 's' : '');
    }
}
Cette solution utilise la fonction strtotime() de PHP pour convertir l'entrée chaîne date-heure dans un horodatage. Il soustrait ensuite l'horodatage actuel de l'horodatage d'entrée pour obtenir le temps écoulé. Pour traduire le temps écoulé dans un format convivial, il utilise un tableau prédéfini de mappages unité-texte ($ unités) et les parcourt pour déterminer l'unité appropriée (par exemple, "jour", "heure", etc. ).

En mettant en œuvre cette approche, vous pouvez déterminer et afficher efficacement le temps écoulé depuis un horodatage donné en PHP, offrant ainsi clarté et commodité dans vos applications.

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