Outils pour utilisateurs

Outils du site


devweb:laravel:carbon (lu 16038 fois)

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
devweb:laravel:carbon [20-02-2017 16:53]
edmc73 [Exemple]
devweb:laravel:carbon [14-08-2018 14:58] (Version actuelle)
edmc73
Ligne 9: Ligne 9:
 <code php> <code php>
     protected $dates = [     protected $dates = [
-        'created_at', 
-        'updated_at', 
         'deadline',         'deadline',
         'closed_at'         'closed_at'
Ligne 61: Ligne 59:
  
 Transformer des secondes en heure minute seconde Transformer des secondes en heure minute seconde
 +<code php>
   >>> \Carbon\Carbon::parse('0sec')->diff(\Carbon\Carbon::parse('490sec'))->format('%H:%I:%S')   >>> \Carbon\Carbon::parse('0sec')->diff(\Carbon\Carbon::parse('490sec'))->format('%H:%I:%S')
   => "00:08:10"   => "00:08:10"
 +</code>
  
 Récupérer une date au format français dd/mm/yyyy pour l'intégrer dans un model Récupérer une date au format français dd/mm/yyyy pour l'intégrer dans un model
  
 +<code php>
   >>> \Carbon\Carbon::createFromFormat('d/m/Y','11/06/1990')   >>> \Carbon\Carbon::createFromFormat('d/m/Y','11/06/1990')
   => Carbon\Carbon {#688   => Carbon\Carbon {#688
Ligne 72: Ligne 73:
        +"timezone": "Europe/Paris",        +"timezone": "Europe/Paris",
      }      }
 +</code>
  
 +exemple dans un controller 
 +<code php> 
 +     $charge->date_debut          = Carbon::createFromFormat('d/m/Y',$request->input('date_debut')); 
 +     $charge->date_fin            = Carbon::createFromFormat('d/m/Y',$request->input('date_fin')); 
 +</code>
  
 Plein d'autre exemple dans la docs => http://carbon.nesbot.com/docs/ Plein d'autre exemple dans la docs => http://carbon.nesbot.com/docs/
 +
 +===== Bug =====
 +
 +Un gros bug de calcul entre les mois => https://github.com/briannesbitt/Carbon/issues/344
 +
 +Pour calculer le nombre de mois entre 2 dates il va falloir utiliser une fonction annexe ...
 +
 +<code php>
 +
 +function diffInMonths(\DateTime $date1, \DateTime $date2)
 +{
 +    $diff =  $date1->diff($date2);
 +
 +    $months = $diff->y * 12 + $diff->m + $diff->d / 30;
 +
 +    return (int) round($months);
 +}
 +</code>
 +
devweb/laravel/carbon.1487606019.txt.gz · Dernière modification: 20-02-2017 16:53 de edmc73