07.10.2019

Sık Kullanılan CARBON Fonksiyonları

Laravel

Carbon fonskiyonu laravel içerisinde Tarih ile ilgili işlemlerimizi kolaylaştırmaktadır. Pek çok çapraz kod yazım işlemini kendisi halleder ve partik bir kütüphanedir.
Carbon kütüphanesini dosyaya dahil etmek için \Carbon\Carbon:: yolunu kullanmak yeterlidir. Carbon paketi Laravel içerisinde yüklü geldiğinden ek bir işleme gerek yoktur.
Carbon kütüphanesini Türkçe kullanmak için Laravel APP klasörü içerisinde 'locale' => 'tr', 'timezone' => 'Europe/Istanbul', ayarları yapılmalıdır.

FORMATLAR

Tarih
///12.12.1985////

{{ \Carbon\Carbon::parse($cost->visit_date)->format('d.m.Y')}}

////12 Aralık 1985///

{{\Carbon\Carbon::parse($cost->visit_date)->isoFormat('DD MMMM YYYY')}}

Bugünün tarihini yazdırmak ;

use Carbon\Carbon;
$td = Carbon::today()->format('Y-m-d');

Form içinde değer (value) olarak bugünün tarihini getirmek


<input type="date" name='invoice[invoice_date]' class="form-control" value="{{ date('Y-m-d') }}" />

 

Tüm Ayları (Ocak-Aralık 12 Ay) Listelemek

(view/blade dosyanızda yazılmalıdır)

 @for ($i = 1; $i 
{{\Carbon\Carbon::createFromDate(null,$i,1)->monthName)}}

@endfor

Aya bağlı sorgu yaparken geçerli aya ait verileri,Bu ayın ilk gününe göre sorgulatmak için


$ThisMonth = Carbon::now()->startOfMonth();

Önemli not: Bir projede bu şekilde ayarlamadığım için geçerli aya ait verileri hatalı getiriyordu. Bu prtik yöntem ile sorunu çözdüm.

Geçen Süreyi Hesaplamak için

aşağıdaki fonksiyon kullanılmaktadır. Genellikle Bu blog yazısı XX Gün önce yayınlandı diye rastlanır.

function gecenSureHesapla($zaman){

$gecenZaman = Carbon::parse($zaman)->diffForHumans(Carbon::now());

return $gecenZaman;

}

İki Tarih Arasındaki farkı gün olarak bulmak

$start = new \Carbon\Carbon($item->StartDate);
$end = new \Carbon\Carbon($item->EndDate);
$interval = $start->diff($end);
$days = $interval->format('%a');//$days değişkeni ile bu farkı istediğiniz şekilde kullanabilirsiniz. 

Yukarıda en temel partik bilgilere yer verdim. Carbon kütüphanesi ile ilgili tüm bilgilere https://carbon.nesbot.com/docs/ adresinden ulaşılabilir.

Yazar: Can BAYAT
Kimdir: 2015 yılından bu yana EMD Enerji Merkezi Danışmanlık şirketine bağlı olarak çalışmaktadır. 2016 SAÜ Fen Bilimleri Enstitüsü Jeofizik Mühendisliği Yüksek Lisans mezunudur. Evli ve bir çocuk babasıdır.
| | canbayat [at] gmail |