Composer adalah dependency manager yang paling banyak digunakan dalam ekosistem PHP. Dengan Composer, kita tidak perlu lagi mengunduh library PHP satu per satu, mencari versi yang kompatibel secara manual, atau menyalin folder library ke dalam proyek.
Composer menangani dependency tersebut melalui satu konfigurasi utama bernama composer.json. Dari file ini, Composer mengetahui library apa yang dibutuhkan proyek, versi yang diizinkan, serta bagaimana dependency tersebut harus dipasang.
Panduan ini membahas instalasi Composer di tiga sistem operasi utama:
- Windows
- macOS
- Linux
Selain instalasi dasar, pembahasan mencakup pengecekan PHP, konfigurasi PATH, penggunaan Composer, pembuatan proyek sederhana, update Composer, troubleshooting, dan beberapa kebiasaan yang sebaiknya diterapkan sejak awal.
1. Apa Itu Composer?
Composer adalah dependency manager untuk PHP.
Sederhananya, bayangkan sebuah aplikasi PHP membutuhkan beberapa library:
Aplikasi PHP
│
├── Library A
├── Library B
├── Library C
└── Library D
Tanpa dependency manager, developer harus:
- mencari library,
- mengunduhnya,
- menentukan versi,
- memastikan library tersebut kompatibel,
- memasukkannya ke proyek,
- mencari dependency tambahan,
- dan mengulangi proses tersebut ketika library diperbarui.
Composer mengotomatisasi pekerjaan tersebut.
Dengan Composer, kita cukup mendefinisikan dependency:
{
"require": {
"monolog/monolog": "^3.0"
}
}
Kemudian menjalankan:
composer install
Composer akan membaca konfigurasi tersebut dan memasang dependency yang diperlukan.
2. Mengapa Composer Penting dalam Pengembangan PHP?
Composer bukan sekadar alat untuk mengunduh library.
Composer membantu mengatur dependency sebuah proyek secara terstruktur.
Beberapa manfaat utamanya:
2.1 Dependency management
Composer mengetahui library yang dibutuhkan aplikasi.
Contohnya:
Laravel
├── Symfony
├── Monolog
├── Carbon
├── Guzzle
└── berbagai dependency lainnya
Developer tidak perlu memasang semuanya satu per satu.
2.2 Version management
Composer memungkinkan proyek menentukan versi dependency.
Contohnya:
{
"require": {
"monolog/monolog": "^3.0"
}
}
Artinya proyek mengizinkan versi yang sesuai dengan constraint ^3.0.
2.3 Dependency of dependency
Sebuah library biasanya membutuhkan library lain.
Misalnya:
Project
│
└── Library A
│
├── Library B
└── Library C
│
└── Library D
Composer dapat menyelesaikan dependency tersebut secara otomatis.
2.4 Autoloading
Composer juga menyediakan mekanisme autoloading sehingga class PHP dapat digunakan tanpa melakukan require terhadap setiap file secara manual.
Biasanya aplikasi cukup menjalankan:
require __DIR__ . '/vendor/autoload.php';
Setelah itu class yang didaftarkan melalui Composer dapat digunakan sesuai konfigurasi autoload.
3. Sebelum Menginstal Composer
Composer membutuhkan PHP.
Karena itu, jangan langsung menginstal Composer tanpa memeriksa apakah PHP sudah tersedia.
Buka terminal atau Command Prompt kemudian jalankan:
php -v
Jika PHP sudah tersedia, biasanya akan muncul informasi seperti:
PHP 8.x.x (cli) ...
Versi PHP yang tersedia dapat berbeda tergantung sistem dan environment yang digunakan.
Jika muncul pesan seperti:
'php' is not recognized as an internal or external command
atau:
command not found: php
berarti PHP belum tersedia melalui PATH.
4. Apa Itu PATH?
PATH adalah daftar lokasi yang dicari sistem operasi ketika kita menjalankan sebuah program melalui terminal.
Misalnya kita mengetik:
php
Sistem akan mencari executable PHP pada direktori yang terdapat di PATH.
Hal yang sama berlaku untuk Composer.
Jika Composer sudah terpasang tetapi perintah:
composer
tidak dikenali, salah satu kemungkinan terbesar adalah lokasi executable Composer belum masuk PATH.
Secara sederhana:
Terminal
│
│ menjalankan "composer"
▼
PATH
│
├── folder PHP
├── folder Composer
└── folder program lainnya
5. Instalasi Composer di Windows
Untuk Windows, tersedia installer Composer yang cukup mudah digunakan.
5.1 Persiapkan PHP
Pastikan PHP dapat dipanggil dari Command Prompt atau PowerShell.
Buka:
Command Prompt
atau:
PowerShell
Kemudian:
php -v
Jika versi PHP muncul, lanjut ke instalasi Composer.
Jika belum, PHP perlu dipasang terlebih dahulu.
PHP dapat berasal dari instalasi PHP mandiri maupun environment seperti XAMPP, Laragon, atau environment development PHP lainnya.
Yang penting, executable PHP harus dapat ditemukan oleh sistem.
5.2 Unduh Composer untuk Windows
Gunakan installer resmi Composer untuk Windows.
Installer biasanya bernama:
Composer-Setup.exe
Jalankan installer tersebut.
Pada proses instalasi, Composer akan meminta lokasi executable PHP.
Contohnya:
C:\php\php.exe
atau apabila menggunakan environment tertentu, lokasi PHP bisa berada di direktori aplikasi environment tersebut.
Pastikan path yang dipilih benar.
5.3 Menentukan PHP yang Digunakan Composer
Installer Composer perlu mengetahui executable PHP.
Jika PHP berada di:
C:\php\php.exe
maka pilih file tersebut.
Setelah itu installer akan melanjutkan proses konfigurasi.
Jika menggunakan XAMPP, lokasi PHP biasanya berada di:
C:\xampp\php\php.exe
Jika menggunakan Laragon, lokasi PHP mengikuti versi PHP yang sedang digunakan oleh Laragon.
Jangan menebak lokasi. Gunakan file php.exe yang benar-benar digunakan environment PHP Anda.
6. Verifikasi Composer di Windows
Setelah instalasi selesai, tutup Command Prompt atau PowerShell yang sebelumnya terbuka.
Kemudian buka terminal baru.
Jalankan:
composer --version
atau:
composer -V
Jika berhasil, Composer akan menampilkan informasi versinya.
Anda juga dapat menjalankan:
composer
untuk melihat daftar command yang tersedia.
7. Jika composer Tidak Dikenali di Windows
Misalnya muncul:
'composer' is not recognized as an internal or external command
Jangan langsung menginstal ulang Composer.
Pertama, tutup terminal kemudian buka kembali.
Alasannya sederhana: perubahan PATH tidak selalu langsung terbaca oleh terminal yang sudah terbuka.
Jika masih bermasalah, periksa PATH.
Di Windows, buka:
System Properties
→ Advanced
→ Environment Variables
Kemudian periksa variabel:
Path
Pastikan lokasi Composer telah tersedia.
Anda juga dapat mencari lokasi Composer menggunakan:
where composer
Jika Composer ditemukan, Windows akan menampilkan lokasi executable terkait.
Untuk PHP:
where php
Ini sangat berguna ketika komputer memiliki beberapa instalasi PHP.
8. Instalasi Composer di macOS
Di macOS, Composer dapat dipasang melalui installer resmi atau package manager seperti Homebrew.
Untuk developer yang menggunakan Homebrew, instalasi biasanya lebih praktis.
8.1 Periksa PHP
Buka Terminal:
php -v
Jika PHP tersedia, lanjutkan.
Jika belum tersedia dan menggunakan Homebrew, PHP dapat dipasang dengan:
brew install php
Setelah selesai:
php -v
9. Instalasi Composer macOS Menggunakan Homebrew
Jika Homebrew sudah tersedia, Composer dapat dipasang dengan:
brew install composer
Setelah proses selesai, cek:
composer --version
Jika versi Composer muncul, instalasi berhasil.
Untuk mengetahui lokasi executable Composer:
which composer
10. Bagaimana Jika Homebrew Belum Terpasang?
Periksa:
brew --version
Jika command tersebut tidak ditemukan, berarti Homebrew belum tersedia.
Homebrew merupakan package manager populer untuk macOS.
Gunakan dokumentasi resmi Homebrew untuk instalasi versi terbaru dan ikuti instruksi sesuai arsitektur Mac yang digunakan.
Setelah Homebrew terpasang:
brew --version
kemudian:
brew install composer
11. Instalasi Composer macOS Tanpa Homebrew
Composer juga dapat dipasang menggunakan installer berbasis PHP.
Pendekatan dasarnya adalah mengunduh installer Composer, memverifikasi installer, kemudian memasang Composer sebagai executable.
Salah satu pola instalasi yang umum:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
Kemudian installer dijalankan:
php composer-setup.php
Setelah itu, Composer dapat dipindahkan ke lokasi yang ada di PATH, misalnya:
sudo mv composer.phar /usr/local/bin/composer
Pada beberapa sistem macOS modern, /opt/homebrew/bin atau lokasi lain mungkin lebih sesuai.
Karena konfigurasi PATH dapat berbeda, periksa terlebih dahulu:
echo $PATH
dan:
which php
12. Instalasi Composer di Linux
Linux memiliki banyak distribusi, tetapi konsep instalasinya relatif sama.
Distribusi yang umum digunakan antara lain:
- Ubuntu
- Debian
- Linux Mint
- Fedora
- Rocky Linux
- AlmaLinux
- Arch Linux
Langkah pertama tetap sama:
php -v
13. Instal PHP di Ubuntu atau Debian
Jika PHP belum tersedia, pada Ubuntu/Debian Anda dapat menggunakan package manager:
sudo apt update
Kemudian:
sudo apt install php-cli unzip
Setelah selesai:
php -v
Jika versi PHP muncul, PHP CLI sudah tersedia.
php-cli penting karena Composer digunakan melalui command line.
14. Instal Composer di Linux
Composer menyediakan installer resmi berbasis PHP.
Pendekatan yang umum adalah mengunduh installer:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
Kemudian jalankan:
php composer-setup.php
Jika berhasil, akan terbentuk:
composer.phar
File tersebut dapat dijalankan dengan:
php composer.phar --version
Namun, agar kita dapat menggunakan command:
composer
tanpa menulis php composer.phar, Composer biasanya ditempatkan pada direktori yang terdapat di PATH.
Contohnya:
sudo mv composer.phar /usr/local/bin/composer
Kemudian:
composer --version
15. Mengapa Composer Sering Diletakkan di /usr/local/bin?
Linux menggunakan PATH untuk mencari executable.
Cek PATH dengan:
echo $PATH
Jika terdapat:
/usr/local/bin
maka program yang diletakkan di sana biasanya dapat dipanggil langsung:
composer
daripada:
php /path/ke/composer.phar
16. Instalasi Composer dengan Package Manager Linux
Pada beberapa distribusi, Composer tersedia melalui repository sistem.
Contohnya pada Ubuntu/Debian:
sudo apt update
sudo apt install composer
Kemudian:
composer --version
Cara ini mudah, tetapi perlu dipahami bahwa versi Composer dari repository distribusi bisa berbeda dari versi yang tersedia langsung dari situs resmi Composer.
Jika kebutuhan proyek mengharuskan versi tertentu, periksa versi yang tersedia sebelum memilih metode ini.
17. Verifikasi Instalasi Composer
Terlepas dari sistem operasi yang digunakan, pemeriksaan dasar dapat dilakukan dengan:
composer --version
Kemudian:
composer diagnose
composer diagnose dapat membantu menemukan masalah pada environment Composer.
Contoh pemeriksaan:
composer diagnose
Jika environment bermasalah, Composer dapat memberikan informasi mengenai konfigurasi yang perlu diperiksa.
18. Memahami File composer.json
Setelah Composer terpasang, hal penting berikutnya adalah memahami composer.json.
Misalnya:
{
"name": "contoh/aplikasi",
"description": "Contoh aplikasi PHP",
"require": {
"monolog/monolog": "^3.0"
}
}
Bagian:
"require"
berisi dependency utama aplikasi.
Dalam contoh:
"monolog/monolog": "^3.0"
berarti aplikasi membutuhkan package Monolog dengan constraint versi tersebut.
19. Membuat Proyek Composer Baru
Buat folder:
mkdir belajar-composer
Masuk:
cd belajar-composer
Kemudian:
composer init
Composer akan menanyakan beberapa informasi.
Setelah selesai, proyek akan memiliki:
belajar-composer/
└── composer.json
20. Menambahkan Package
Misalnya ingin memasang Monolog:
composer require monolog/monolog
Composer akan membuat atau memperbarui:
composer.json
dan:
composer.lock
Kemudian dependency akan dipasang ke:
vendor/
Strukturnya kurang lebih:
belajar-composer/
│
├── composer.json
├── composer.lock
└── vendor/
├── autoload.php
└── ...
21. Apa Itu composer.lock?
composer.json menjelaskan dependency dan constraint versi.
Sementara composer.lock menyimpan versi dependency yang benar-benar dipilih saat dependency di-resolve.
Ini penting dalam pengembangan aplikasi.
Misalnya developer A menjalankan:
composer install
dan developer B juga menjalankan:
composer install
Dengan composer.lock yang sama, keduanya akan menggunakan dependency yang telah dikunci oleh file tersebut.
Untuk aplikasi, composer.lock umumnya perlu disimpan di repository Git.
22. composer install vs composer update
Dua command ini sering membingungkan developer pemula.
composer install
Gunakan ketika ingin memasang dependency berdasarkan konfigurasi proyek.
composer install
Jika composer.lock tersedia, Composer akan menggunakan versi yang tercatat di lock file.
Ini adalah command yang umum digunakan ketika melakukan clone project dari Git.
Contohnya:
git clone <repository>
cd project
composer install
composer update
Gunakan ketika memang ingin melakukan resolusi ulang dependency berdasarkan constraint pada composer.json.
composer update
Command ini dapat mengubah composer.lock.
Karena itu, jangan menjalankan composer update secara sembarangan pada project production.
23. Perbedaan Sederhana
Bayangkan:
composer.json
│
▼
Aturan versi dependency
│
▼
composer.lock
│
▼
Versi yang dipilih
│
▼
vendor/
Secara sederhana:
composer install
= pasang dependency sesuai lock file.
Sedangkan:
composer update
= cari kembali versi dependency yang sesuai dengan constraint.
24. Apa Itu Folder vendor?
Folder:
vendor/
berisi dependency yang dipasang Composer.
Contohnya:
vendor/
├── autoload.php
├── composer/
├── monolog/
└── ...
Jangan mengedit file di dalam vendor secara manual.
Jika dependency berubah, biarkan Composer yang mengelolanya.
25. Autoload Composer
Composer menghasilkan:
vendor/autoload.php
File ini dapat digunakan aplikasi:
require __DIR__ . '/vendor/autoload.php';
Setelah itu package yang terpasang melalui Composer dapat digunakan.
Contoh:
<?php
require __DIR__ . '/vendor/autoload.php';
use Monolog\Logger;
use Monolog\Handler\StreamHandler;
$log = new Logger('app');
$log->pushHandler(new StreamHandler(__DIR__ . '/app.log'));
$log->info('Aplikasi berjalan.');
echo "Selesai.";
Jalankan:
php index.php
Jika tidak ada error dependency, berarti Composer dan autoload telah bekerja dengan baik.
26. Composer Global vs Dependency Project
Ada konsep yang perlu dibedakan.
Composer sendiri adalah tool global.
Sementara package seperti:
monolog/monolog
biasanya merupakan dependency project.
Contohnya:
Computer
│
├── Composer
│
├── Project A
│ └── vendor/
│
├── Project B
│ └── vendor/
│
└── Project C
└── vendor/
Setiap project memiliki dependency masing-masing.
27. Menjalankan Composer di Project
Setelah Composer terpasang, pola kerja yang umum adalah:
cd nama-project
Kemudian:
composer install
Jika ingin menambahkan package:
composer require nama/vendor
Jika ingin menghapus package:
composer remove nama/vendor
28. Command Composer yang Perlu Diketahui
Beberapa command penting:
| Command | Fungsi |
|---|---|
composer --version |
Melihat versi Composer |
composer diagnose |
Mendiagnosis environment |
composer init |
Membuat composer.json
|
composer install |
Memasang dependency |
composer update |
Memperbarui dependency |
composer require |
Menambahkan dependency |
composer remove |
Menghapus dependency |
composer dump-autoload |
Membuat ulang autoloader |
composer show |
Melihat package yang terpasang |
composer validate |
Memvalidasi composer.json
|
29. Masalah PHP Tidak Ditemukan
Jika:
php -v
menghasilkan:
command not found
atau pada Windows:
php is not recognized
maka masalahnya belum berada pada Composer.
Perbaiki terlebih dahulu instalasi atau PATH PHP.
Periksa lokasi PHP.
Windows
where php
macOS/Linux
which php
Jika tidak ada hasil, shell belum menemukan PHP.
30. Masalah Composer Tidak Ditemukan
Jika:
composer --version
tidak ditemukan:
Windows
Gunakan:
where composer
macOS/Linux
Gunakan:
which composer
Jika tidak ada hasil, periksa PATH dan instalasi Composer.
Setelah memperbarui PATH, buka terminal baru.
31. Beberapa Versi PHP Terpasang
Ini adalah masalah yang cukup umum pada komputer developer.
Misalnya:
PHP 8.1
PHP 8.2
PHP 8.3
PHP 8.4
tersedia secara bersamaan.
Periksa PHP yang sedang digunakan:
php -v
dan:
Windows
where php
macOS/Linux
which php
Jika lebih dari satu lokasi muncul, PATH menentukan PHP mana yang dipanggil terlebih dahulu.
32. Masalah Extension PHP
Composer dan package PHP tertentu dapat membutuhkan extension tertentu.
Jika Composer menampilkan pesan seperti:
ext-xxx is missing
berarti PHP yang sedang digunakan belum memiliki extension tersebut.
Periksa extension:
php -m
Untuk melihat konfigurasi PHP:
php --ini
Command tersebut menunjukkan file konfigurasi php.ini yang sedang digunakan.
33. Masalah memory_limit
Pada dependency besar, Composer dapat menggunakan cukup banyak memory.
Jika mendapatkan error berkaitan dengan memory limit, periksa:
php -i | grep memory_limit
Pada Windows, Anda dapat menggunakan:
php -i | findstr memory_limit
Namun jangan langsung menaikkan memory limit tanpa memahami penyebabnya. Error memory dapat berasal dari environment, dependency graph, atau konfigurasi PHP yang digunakan CLI.
34. Masalah SSL atau Sertifikat
Jika Composer mengalami masalah ketika mengakses repository HTTPS, periksa konfigurasi SSL PHP.
Gunakan:
composer diagnose
dan:
php --ini
Pastikan PHP CLI menggunakan konfigurasi yang benar.
Masalah SSL sebaiknya diperbaiki pada konfigurasi sertifikat atau environment, bukan dengan menonaktifkan verifikasi SSL secara sembarangan.
35. Jangan Menggunakan sudo composer Secara Sembarangan
Pada Linux/macOS, developer terkadang menemukan error permission lalu menjalankan:
sudo composer install
Ini bukan solusi yang ideal untuk dependency project.
Menggunakan sudo dapat membuat file project dimiliki oleh user root, kemudian user biasa mengalami masalah permission.
Lebih baik perbaiki ownership dan permission project.
Gunakan hak administrator hanya ketika memang dibutuhkan, misalnya ketika memasang executable secara system-wide ke direktori yang membutuhkan permission administrator.
36. Composer dan Git
Dalam project PHP modern, biasanya file berikut disimpan di Git:
composer.json
composer.lock
Sedangkan folder:
vendor/
biasanya tidak disimpan di repository.
Contoh .gitignore:
/vendor/
Ketika developer lain melakukan clone:
git clone <repository>
kemudian:
cd project
composer install
Composer akan membuat kembali:
vendor/
berdasarkan dependency project.
37. Composer pada Laravel
Composer sangat erat dengan ekosistem Laravel.
Untuk membuat project Laravel, pola yang umum adalah:
composer create-project laravel/laravel nama-aplikasi
Kemudian:
cd nama-aplikasi
dan:
php artisan serve
Composer menangani berbagai dependency Laravel di belakang layar.
Ketika project Laravel sudah tersedia dari repository:
git clone <repository>
cd nama-aplikasi
composer install
Kemudian konfigurasi environment dan jalankan aplikasi sesuai kebutuhan project.
38. Composer untuk Development Team
Dalam tim, Composer membantu menjaga dependency tetap konsisten.
Workflow sederhananya:
Developer A
│
├── composer require package
│
├── composer.json
└── composer.lock
│
▼
Git
│
┌──────┴──────┐
▼ ▼
Developer B Developer C
│ │
└── composer install
Dengan demikian, anggota tim tidak perlu memasang dependency secara manual satu per satu.
39. Composer pada Server Production
Pada deployment, pola yang umum adalah:
composer install --no-dev --optimize-autoloader
Namun command deployment harus disesuaikan dengan framework dan kebutuhan aplikasi.
Untuk aplikasi production, dependency sebaiknya dipasang berdasarkan lock file yang sudah diuji.
Hindari menjadikan:
composer update
sebagai bagian dari deployment rutin tanpa alasan yang jelas.
40. Composer di Windows, macOS, dan Linux
Secara konsep, ketiga sistem operasi bekerja dengan cara yang sama.
| Hal | Windows | macOS | Linux |
|---|---|---|---|
| PHP | Wajib | Wajib | Wajib |
| Composer | Wajib | Wajib | Wajib |
| Terminal | CMD/PowerShell/Terminal | Terminal | Terminal |
| Cek PHP | php -v |
php -v |
php -v |
| Cek Composer | composer -V |
composer -V |
composer -V |
| Cek executable PHP | where php |
which php |
which php |
| Cek executable Composer | where composer |
which composer |
which composer |
| Package manager umum | winget/choco, installer aplikasi | Homebrew | apt/dnf/pacman |
Perbedaan utama berada pada cara memasang PHP, Composer, dan mengatur PATH.
41. Checklist Instalasi Composer
Setelah instalasi, lakukan pemeriksaan berikut.
PHP
php -v
Composer
composer --version
Composer diagnostic
composer diagnose
Lokasi PHP
Windows:
where php
macOS/Linux:
which php
Lokasi Composer
Windows:
where composer
macOS/Linux:
which composer
Versi PHP CLI
php -v
Konfigurasi PHP
php --ini
Jika seluruh command bekerja, environment dasar Composer sudah siap.
42. Kesalahan yang Sering Dilakukan Pemula
42.1 Menginstal Composer tanpa PHP
Composer adalah dependency manager untuk PHP.
Jadi PHP perlu tersedia terlebih dahulu.
42.2 Tidak membuka terminal baru setelah mengubah PATH
Jika PATH berubah tetapi terminal lama masih digunakan, command baru mungkin belum dikenali.
Solusi:
- tutup terminal,
- buka terminal baru,
- jalankan kembali:
composer --version
42.3 Memiliki beberapa PHP tetapi tidak tahu PHP mana yang digunakan
Gunakan:
php -v
dan:
where php
atau:
which php
42.4 Menghapus composer.lock tanpa alasan
composer.lock membantu menjaga dependency tetap konsisten.
Jangan menghapusnya hanya karena muncul masalah dependency.
Cari tahu penyebab masalah terlebih dahulu.
42.5 Menjalankan composer update setiap kali ada error
composer update bukan command untuk memperbaiki semua masalah.
Jika project sebenarnya sudah memiliki lock file yang benar, gunakan:
composer install
dan diagnosis masalah yang sebenarnya.
42.6 Mengubah isi vendor secara manual
Jangan mengedit dependency di dalam:
vendor/
Jika membutuhkan perubahan library, gunakan dependency yang sesuai atau mekanisme Composer yang tepat.
43. Tes Instalasi dengan Project Sederhana
Setelah Composer berhasil dipasang, sebaiknya jangan berhenti pada:
composer --version
Lakukan pengujian nyata.
Buat folder:
mkdir composer-test
cd composer-test
Kemudian:
composer require monolog/monolog
Jika berhasil, akan terbentuk:
composer.json
composer.lock
vendor/
Buat file:
index.php
Isi:
<?php
require __DIR__ . '/vendor/autoload.php';
use Monolog\Logger;
use Monolog\Handler\StreamHandler;
$logger = new Logger('demo');
$logger->pushHandler(
new StreamHandler(__DIR__ . '/app.log')
);
$logger->info('Composer berhasil digunakan.');
echo "Composer bekerja dengan baik.\n";
Jalankan:
php index.php
Jika muncul:
Composer bekerja dengan baik.
dan file:
app.log
terbentuk, maka Composer, dependency installation, dan autoloading telah bekerja.
44. Alur Kerja Composer yang Perlu Dipahami
Daripada menghafalkan banyak command, lebih baik pahami alurnya.
composer.json
│
▼
Dependency definition
│
▼
Composer
│
├── Resolusi dependency
│
├── Menentukan versi
│
├── Mengunduh package
│
└── Membuat autoloader
│
▼
composer.lock
│
▼
vendor/
│
▼
Aplikasi PHP
Inilah inti Composer.
45. Composer Bukan Framework
Hal ini juga penting dipahami.
Composer bukan Laravel.
Composer bukan Symfony.
Composer bukan CodeIgniter.
Composer adalah dependency manager.
Hubungannya dapat digambarkan seperti:
Composer
│
├── Laravel
├── Symfony
├── Monolog
├── Guzzle
├── PHPUnit
└── berbagai package PHP lainnya
Framework dan library dapat menggunakan Composer untuk mengelola dependency mereka.
46. Ringkasan Instalasi
Windows
- Pastikan PHP tersedia.
- Jalankan:
php -v
- Instal Composer menggunakan installer Windows.
- Pastikan installer menggunakan PHP yang benar.
- Buka terminal baru.
- Jalankan:
composer --version
- Jika gagal:
where php
where composer
macOS
Jika menggunakan Homebrew:
brew install php
brew install composer
Kemudian:
php -v
composer --version
Jika menggunakan installer manual, pastikan executable Composer berada pada PATH.
Linux
Pada Ubuntu/Debian, salah satu pendekatan:
sudo apt update
sudo apt install php-cli unzip
Kemudian instal Composer melalui installer resmi atau package manager yang sesuai.
Verifikasi:
php -v
composer --version
composer diagnose
47. Kesimpulan
Instalasi Composer sebenarnya tidak sulit. Bagian yang paling sering membuat pemula mengalami masalah bukan Composer itu sendiri, melainkan hubungan antara PHP, PATH, dan environment sistem operasi.
Urutan berpikir yang paling aman adalah:
1. Apakah PHP tersedia?
↓
2. PHP mana yang digunakan?
↓
3. Apakah Composer sudah terpasang?
↓
4. Apakah Composer dapat ditemukan oleh PATH?
↓
5. Apakah Composer dapat menjalankan dependency?
↓
6. Apakah project dapat menggunakan vendor/autoload.php?
Jika keenam bagian tersebut dipahami, masalah Composer akan jauh lebih mudah ditelusuri.
Command paling penting untuk diingat:
php -v
composer --version
composer diagnose
composer install
composer require nama/vendor
composer update
Dan satu prinsip yang sangat penting:
Jangan hanya menghafal command Composer. Pahami hubungan antara
composer.json,composer.lock,vendor/, PHP, dan autoloading.
Dengan pemahaman tersebut, Composer bukan lagi sekadar program yang harus "diinstal", tetapi menjadi bagian dari workflow pengembangan aplikasi PHP yang terstruktur.
Tentang Penulis
Ahmad Asroni, S.Kom., M.Kom. adalah software developer dan technology practitioner yang berfokus pada software engineering, web development, mobile development, dan artificial intelligence.
Saya aktif mengembangkan aplikasi dan solusi teknologi menggunakan berbagai teknologi modern, sekaligus berbagi pengetahuan praktis mengenai pemrograman, software development, dan teknologi informasi melalui berbagai proyek dan tulisan teknis.
Artikel ini ditulis untuk memberikan panduan praktis mengenai instalasi Composer pada Windows, macOS, dan Linux, mulai dari persiapan PHP, konfigurasi environment, proses instalasi, hingga penggunaan Composer dalam proyek PHP.
Profil Ahmad Asroni
- Nama: Ahmad Asroni, S.Kom., M.Kom.
- Fokus: Software Engineering, Web Development, Mobile Development, Artificial Intelligence
- Website: [https://ahmadasroni38.github.io]
- GitHub: [https://github.com/ahmadasroni38]
- Kaggle: [https://www.kaggle.com/ahmadasroni]
- LinkedIn: [https://www.linkedin.com/in/ahmad-asroni-7538bb214]
Ditulis oleh Ahmad Asroni
Software Developer · Technology Practitioner · AI Enthusiast
© 2026 Ahmad Asroni. All rights reserved.
Top comments (0)