Cara menggunakan Composer di PHP

Muhammad Zakuan
WonogiriDev
Published in
4 min readJun 25, 2018

Hello world ….

Pada postingan saya yang pertama ini, saya ingin sedikit sharing tentang apa dan bagaimana menggunakan package manager Composer.

Intermezzo

Pada proses pengembangan aplikasi, akan dibutuhkan libary library guna menunjang kebutuhan fungsional sistem. Sebuah libary yang dalam perkembangannya kemudian disebut package dibuat oleh orang atau komunitas yang berbeda. Dalam proses pengembangannya, suatu package tersebut kadang mengalami proses update, baik karena perbaikan bug atau penambahan fitur dan fungsi. Suatu package juga kadang digunakan dengan memanfaatkan paket lain. Dengan demikian ada suatu dependency antar paket. Untuk itulah diperlukan sebuah cara untuk mengatur penggunaan package package tersebut. Maka lahirlah sebuah package manager Composer. yeeeyyyyy ……….

Apa itu Composer ?

Composer merupakan package manager PHP. Keberadaan package manager Composer sangat memberikan kemudahan bagi programmer untuk mengembangkan aplikasinya.

Dengan menggunakan composer sebuah package. Kita tidak perlu kita menginstall package satu persatu atau ngeload satu satu. Ketika kita menginstall ataupun memanggil suatu package, maka package package yang dibutuhkan akan dipanggil secara otomatis tepat sesuai dengan syarat yang ditetapkan. Package package tersebut disimpan di sebuah repository server terpusat yaitu https://packagist.org.

Install Composer di Windows

Untuk menginstall composer di windows, silahkan buka link berikut untuk download file installer

https://getcomposer.org/doc/00-intro.md#using-the-installer

Kemudian jalankan file installer tersebut, sehingga composer akan mulai melakukan proses instalasi sebagaimana menginstall aplikasi aplikasi lain di windows.

Install Composer di Linux

Untuk menginstall composer di linux, silahkan buka link berikut

https://getcomposer.org/doc/00-intro.md#installation-linux-unix-osx

Silahkan ikut petunjuk proses instalasi.

Melihat hasil instalasi composer

Setelah composer maka anda dapat mengetes apakah proses instalasi berhasil atau tidak . Di linux ubuntu anda dapat mengetes dengan menjalankan perintah berikut di terminal untuk linux dan di command prompt untuk windows

$ composer

Jika composer telah terinstall maka akan ditampilkan halaman sebagai berikut

Menggunakan composer

Dalam studi kasus penggunaan composer ini, saya akan memanfaatkan composer untuk menginstall library guzzle guna mengakses sisa kuota paket sms gateway di zenziva.net. Dalam kasus ini saya menggunakan OS ubuntu versi 17.10. So untuk versi lain atau OS lain harap menyesuaikan ya.

Buka terminal, dan ketik perintah berikut

$ mkdir smsgateway

$ cd smsgateway

$ composer init

Saat proses pengisian nama package dan lain lain , abaikan saja pengisian dengan menekan enter hingga selesai pembuatan file composer.json. Jika berhasil maka file composer.json anda akan tampak seperti berikut.

Install package Guzzle

Jalankan perintah berikut di terminal untuk instalasi package guzzle

$ composer require guzzlehttp/guzzle

Teks yang digaris miring di atas, merupakan nama package dari guzzle, sedangkan require merupakan perintah dari composer untuk menambahkan package guzzle ke composer.json. Jika proses instalasi selesai maka file composer.json anda akan berubah menjadi seperti berikut

Dari gambar terlihat package guzzle ditambahkan ke property require. Create file index.php di folder root smsgateway, kemudian tambahkan code berikut

<?phprequire_once __DIR__ . '/vendor/autoload.php';use GuzzleHttp\Client;use GuzzleHttp\Exception\RequestException;use GuzzleHttp\Psr7\Request;$api = "https://reguler.zenziva.net/apps/smsapibalance.php?userkey=$userkeyanda&passkey=$passkeyanda";$client = new GuzzleHttp\Client();$res = $client->request('GET', $api);$fileContents = $res->getBody();$fileContents = str_replace(array("\n", "\r", "\t"), '', $fileContents);$fileContents = trim(str_replace('"', "'", $fileContents));$simpleXml = simplexml_load_string($fileContents);$hasiljson = json_encode($simpleXml);$hasildecode = json_decode($hasiljson);print_r($hasildecode);?>

Penjelasan code

Berhubung tutorial ini membahas tentang composer saja, maka saya hanya akan menjelaskan code code yang relevan dengan tema tutorial.

Inti penggunaan dari composer dari code di atas adalah pada baris ke 3, dimana kita memanggil file autoload.php. Dengan memanggil file autoload.php kita otomatis akan memanggil package dari guzzle beserta package package dependency nya. Kemudian class class yang diperlukan dipanggil ulang pada baris 2, 3, 4.

Jika anda buka file di atas di browser maka akan ditampilkan hasil sebagai berikut.

Dari hasil di atas diketahui sisa sms adalah 0.

Sekian tutorialnya, …semoga dapat memberikan manfaat..

--

--