Langkah Sederhana Menggunakan Composer.json
Untuk menggunakan Composer dengan PHP, Anda harus membuat file composer.json terlebih dahulu. Misalkan Anda mencari data dari daftar Composer.File ini berisi package (dependency) yang perlu diunduh.
Selain itu, Composer.json juga memeriksa kompatibilitas versi Composer dengan proyek Anda. Jadi jika Anda menggunakan package versi lama, Composer.json akan segera memberi tahu Anda untuk menghindari masalah atau arror di masa mendatang.
Sebenarnya, Anda dapat membuat dan memperbarui Composer.json sendiri. Namun, karena tutorial ini ditujukan untuk pengaturan otomatis, kami menyarankan Anda untuk tidak menggunakan metode manual untuk membuat file seperti itu.
Mari kita membuat contoh atau proyek contoh untuk mendemonstrasikan kegunaan dan fungsionalitas Composer.json. Proyek ini adalah pengatur waktu PHP sederhana. Developer dapat melihat berapa lama waktu yang dibutuhkan untuk menjalankan kode mereka. Tentu saja alat ini sangat berguna untuk optimasi dan debugging.
Berikut langkah-langkah membuat proyek PHP:
- Buat direktori baru untuk proyek ini. Timer akan dibuat, jadi beri nama saja foldernya phptimer. Untuk menambahkan nama, jalankan perintah berikut:
mkdir phptimer
- Tambahkan direktori yang baru saja dibuat:
cd phptimer
- Referensi package atau library untuk proyek baru ini. Anda dapat mencari di Packagist. Situs web ini memiliki banyak library untuk mengembangkan proyek Anda. Contoh ini memerlukan timer package, jadi masukkan kata kunci pengatur waktu di kotak pencarian:
Screenshot di atas menunjukkan beberapa paket pengatur waktu yang tersedia. Setiap paket memiliki nama dan deskripsi singkat. Untuk tutorial ini, kita akan memilih phpunit/phptimer yang paling banyak diunduh dan memiliki rating bintang di GitHub.
- Setelah memilih package, jalankan perintah berikut agar Composer dapat menambahkan paket ke proyek Anda.
composer require phpunit/php-timer
Hasil dari perintah di atas akan menampilkan versi phpunit/php-timer:
Using version ^1.0 phpunit/php-timer
Simbol tanda sisipan (^) mengacu pada opsi untuk interoperabilitas maksimum. Artinya Composer akan selalu mengupdate package hingga ada versi yang menghentikan (break).
Untuk contoh package yang kami gunakan, cakupan update-nya yakni >=1.0.9 <2.0.0. Versi 2.0.0 akan memberhentikan (break) kompatibilitas backward.
Menjalankan dua perintah di atas akan membuat dua file baru, composer.json dan composer.lock, serta folder bernama vendor di direktori proyek Anda. Ini adalah direktori yang digunakan Composer untuk menyimpan semua package dan dependency.
Menggunakan Autoload Script
Untuk memuat (load) dependency ke dalam skrip PHP, Anda dapat menggunakan Composer’s autoload file. Alat ini mempercepat dan menyederhanakan proses. Sebelum mendeklarasikan atau membuat instance variabel baru di skrip Anda, tulis baris perintah berikut:
require '/vendor/autoload.php'
Untuk memahami subbab ini, kami menyediakan konten contoh sederhana. Misalkan kita ingin menguji proyek yang telah dibuat sebelumnya yaitu phptimer:
- Buka nano text editor dan buat skrip bernama demo.php.
nano demo.php
Kemudian copy dan paste baris berikut ke dalam file:
<?php require __DIR__ . '/vendor/autoload.php' Timer::start(); // your code $time = Timer::stop();var_dump($time);print Timer::secondsToTimeString($time);
- Jalankan script:
php demo.php
Terminal akan menampilkan hasil yang sama seperti gambar di bawah ini:
double(1.0893424438611E-5) 0 ms
Memperbarui Dependency Proyek
Ada dua cara untuk memperbarui package:
- Universal update. Untuk memeriksa dan memperbarui semua package dan dependency sekaligus, jalankan perintah berikut:
composer update
- Package-specific update. Periksa versi terbaru dari satu atau lebih paket tertentu dengan menjalankan perintah berikut:
composer update vendor/package vendor2/package2
Pastikan untuk mengganti vendor/package dengan nama package yang hendak diperbarui.
Saat Anda menjalankan perintah update, Composer memperbarui file composer.json dan composer.lock agar sesuai dengan status ketergantungan proyek saat ini.