Maison  >  Article  >  développement back-end  >  Sept méthodes de carbone très utiles dans Laravel

Sept méthodes de carbone très utiles dans Laravel

小云云
小云云original
2018-01-10 17:05:263405parcourir

Lors de l'écriture d'applications PHP, vous avez souvent besoin de traiter des dates et des heures. Carbon hérite de l'extension API de la classe PHP DateTime, ce qui facilite le traitement des dates et des heures. Cet article partage principalement avec vous sept très utiles mais peu nombreuses. les gens de Laravel Si vous connaissez la méthode Carbon, les amis dans le besoin peuvent s'y référer.

Avant-propos

Tout le monde devrait savoir que nous utilisons Carbon pour gérer les dates et les heures plusieurs fois, n'est-ce pas ? Mais combien de personnes ont lu le document dans son intégralité pour comprendre de quelles méthodes il dispose ? En plus des méthodes bien connues now() et format(), Carbon propose de nombreuses autres méthodes utiles.

Jetons un coup d'oeil.

1. isX : Vrai/Faux

Il existe de nombreuses façons de déterminer si un objet Carbone est aujourd'hui, un week-end, une année bissextile, etc. Les éléments suivants sont répertoriés dans la documentation officielle :

<?php
$dt->isWeekday();
$dt->isWeekend();
$dt->isYesterday();
$dt->isToday();
$dt->isTomorrow();
$dt->isFuture();
$dt->isPast();
$dt->isLeapYear();
$dt->isSameDay(Carbon::now());

2. isBirthday

En plus de la liste ci-dessus, Carbon dispose également d'une méthode pour déterminer si la date est l'anniversaire de quelqu'un. En plus de vérifier le mois et le jour individuellement, vous pouvez également le faire :

$born = Carbon::createFromDate(1987, 4, 23);
$noCake = Carbon::createFromDate(2014, 9, 26);
$yesCake = Carbon::createFromDate(2014, 4, 23);
var_dump($born->isBirthday($noCake));  // bool(false)
var_dump($born->isBirthday($yesCake));

3. Listes StartOfX et EndOfX

Voici les séries startOfX et endOfX :

$dt = Carbon::create(2012, 1, 31, 12, 0, 0);
echo $dt->startOfDay(); // 2012-01-31 00:00:00
echo $dt->endOfDay(); // 2012-01-31 23:59:59
echo $dt->startOfMonth(); // 2012-01-01 00:00:00
echo $dt->endOfMonth(); // 2012-01-31 23:59:59
echo $dt->startOfYear(); // 2012-01-01 00:00:00
echo $dt->endOfYear(); // 2012-12-31 23:59:59
echo $dt->startOfDecade(); // 2010-01-01 00:00:00
echo $dt->endOfDecade(); // 2019-12-31 23:59:59
echo $dt->startOfCentury(); // 2000-01-01 00:00:00
echo $dt->endOfCentury(); // 2099-12-31 23:59:59
echo $dt->startOfWeek(); // 2012-01-30 00:00:00
echo $dt->endOfWeek(); // 2012-02-05 23:59:59

4. Aujourd'hui, demain, hier

Trois méthodes simples mais très utiles, pas besoin d'appeler now(), puis remplacez les heures, les minutes et les secondes, et puis ajoutez ou soustrayez des jours :

$today = Carbon::today(); // assuming 2016-06-24
echo $today;        // 2016-06-24 00:00:00
$tomorrow = Carbon::tomorrow();
echo $tomorrow;       // 2016-06-25 00:00:00
$yesterday = Carbon::yesterday();
echo $yesterday;       // 2016-06-23 00:00:00

5. DiffForHumans + Localisation

Vous avez peut-être utilisé cette méthode appelée diffForHumans() – elle renvoie deux de manière lisible par l'homme. entre les dates :

echo Carbon::now()->subDays(5)->diffForHumans(); // 5 days ago

Mais saviez-vous que cela peut aussi être localisé ? Changez simplement l'emplacement, par exemple en chinois :

Carbon::setLocale('zh');
echo Carbon::now()->addYear()->diffForHumans(); // 一年前

6. Changez maintenant() à tout moment

$knownDate = Carbon::create(2001, 5, 21, 12); // 创建测试日期
Carbon::setTestNow($knownDate);      // set the mock 
echo Carbon::now();         // 2001-05-21 12:00:00

Constante du jour de la semaine

Vous pouvez utiliser les constantes suivantes pour remplacer le jour de la semaine :

var_dump(Carbon::SUNDAY);       // int(0)
var_dump(Carbon::MONDAY);       // int(1)
var_dump(Carbon::TUESDAY);       // int(2)
var_dump(Carbon::WEDNESDAY);      // int(3)
var_dump(Carbon::THURSDAY);      // int(4)
var_dump(Carbon::FRIDAY);       // int(5)
var_dump(Carbon::SATURDAY);      // int(6)
Connaissez-vous toutes les méthodes utiles mentionnées ci-dessus ? Vous pouvez lister les méthodes que vous trouvez utiles dans les commentaires.

Recommandations associées :


Package de traitement de date et d'heure de Laravel Carbon

Comment utiliser le package de traitement de date et d'heure Carbon dans Laravel Exemple

Exemple de la façon dont PHP utilise le processeur de date et d'heure Carbon pour réaliser un affichage humanisé de l'heure

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