Composer sebagai Dependency (Library) manager

Achmad Fatoni
IDLaravel
Published in
2 min readSep 16, 2016

Pada tulisan Mengenal composer di Php saya menyebutkan salah satu fungsi composer adalah sebagai Dependency Manager, dengan composer kita tidak perlu lagi copy dari suatu tempat dan paste ditempat lain.

Contoh :
Dalam aplikasi yang saya buat, saya membutuhkan fungsi untuk mengetahui 30 hari lagi itu tanggal berapa? 7 hari yang lalu tanggal berapa?

fungsi yang sepertinya mudah, kalo 30 hari kedepan ya tinggal tambah 30 hari, kalo 7 hari yang lalu tinggal kurangi 7.

Tunggu sebentar….

Jumlah hari dalam sebulan kan beda-beda, ada yang 28, 29, 30 dan 31. ya walaupun jumlah harinya berbeda-beda tapi masih tetap bisa but sendiri fungsi tersebut.

Tapi…

Kenapa ga coba cari aja dulu, kali aja sudah ada yang buat library unttuk keperluan tersebut?

Setelah meminta wangsit ke mbah gugel ternyata saya menemukan Carbon, Carbon is a simple PHP API extension for DateTime, dengan Carbon ini saya bisa meenggunakan fungsi yang saya butuhkan tanpa perlu menulis kodenya sendiri.

tulis perintah berikut pada terminal, dari root folder project:

composer require nesbot/carbon

Jika belum ada file composer.json dengan perintah diatas composer akan secara otomatis membuat file composer.json.

Jika sebelumnya sudah ada file composer.json, dengan perinta diatas composer akan menambahan carbon pada daftar library yang sudah ada.

composer juga secara otomatis akan membuat folder baru dengan nama vendor, pada folder inilah semua file library yang kita berada.

file composer.json:

{
“require”: {
“nesbot/carbon”: “¹.21”
}
}

untuk bisa menggunakan library yang telah didownload menggunakan composer, kita hanya perlu include satu file ‘vendor/autoload.php’

file index.php

<?php

require
'vendor/autoload.php';
use Carbon\Carbon;

printf("Tanggal hari ini %s", Carbon::now());
printf("<br>");
printf("30 hari lagi tanggal %s", Carbon::now()->addDay(30));

Hasil:

Mudah kan?

--

--