Outils pour utilisateurs

Outils du site


devweb:laravel:carbon (lu 16039 fois)

Différences

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

Lien vers cette vue comparative

Prochaine révision
Révision précédente
devweb:laravel:carbon [18-12-2016 14:47]
edmc73 créée
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 25: Ligne 23:
 Le diffForHumans() est intéressant :) mais il faudra le mettre en français par défaut. Le diffForHumans() est intéressant :) mais il faudra le mettre en français par défaut.
  
-Pour cela, j'ai modifié le fichier **app\Providers\AppServiceProvider.php**+Pour cela, j'ai modifié le fichier **app\Providers\AppServiceProvider.php** en considérant que votre **app.locale='fr'** et votre **app.timezone='Europe/Paris'**
 <code php> <code php>
 <?php <?php
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
 +
 +<code php>
 +  >>> \Carbon\Carbon::createFromFormat('d/m/Y','11/06/1990')
 +  => Carbon\Carbon {#688
 +       +"date": "1990-06-11 16:52:04.000000",
 +       +"timezone_type": 3,
 +       +"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.1482068853.txt.gz · Dernière modification: 18-12-2016 14:47 de edmc73