Skip to content

emka.web.id

menulis pengetahuan – merekam peradaban

Menu
  • Home
  • Tutorial
  • Search
Menu

Mengelola Ketergantungan dengan Komposer: Panduan Pemula

Posted on January 22, 2023

Mengelola dependensi adalah bagian penting dari setiap proyek pengembangan perangkat lunak, dan Composer adalah alat populer yang menyederhanakan proses pengelolaan dependensi dalam PHP. Panduan ini akan memberikan pemahaman mendalam tentang cara menggunakan Composer untuk mengelola dependensi dalam proyek PHP.
AdvertisementMenginstal Composer

Pertama, Anda perlu menginstal Composer di sistem Anda. Ini biasanya dapat dilakukan dengan mengunduh penginstal Komposer dari situs web resmi (https://getcomposer.org/download/) atau cukup menjalankan perintah berikut di sistem Anda.

php -r "copy(` https://getcomposer.org/installer`, `composer-setup.php`);" php composer-setup.php --install-dir=/usr/local/bin --filename=composer 

Setelah diinstal, Anda dapat menjalankan perintah composer di terminal.

composer 

Mengelola Ketergantungan dengan KomposerMengelola Ketergantungan dengan KomposerMengelola Paket dengan Komposer
Menginstal Paket

Setelah Komposer diinstal, Anda dapat menggunakannya untuk i instal paket untuk proyek PHP Anda. Untuk menginstal sebuah paket, Anda dapat menggunakan perintah composer require diikuti dengan nama paket dan versinya. Misalnya, untuk menginstal versi 2.0 dari paket “mypackage”, Anda akan menjalankan perintah berikut:

# Composer sintaks memerlukan mypackage12 # Syntaxcomposer memerlukan mypackage

Perintah ini akan menambahkan paket ke dependensi proyek Anda dan mengunduhnya ke folder vendor. Misalnya untuk menginstal paket terbaru `phpunit/phpunit`, ketik:

composer require phpunit/phpunit 

Anda juga dapat menentukan versi paket spesifik yang akan diinstal.

composer require phpunit/phpunit =9.5.28 

Komposer juga memungkinkan Anda menginstal paket dari repositori tertentu dengan menentukan URL repositori setelah nama paket.

komposer memerlukan mypackage:2.0 git://github.com/myuser/ mypackage.git 

Removing Packages

Untuk menghapus paket dari proyek Anda, Anda dapat menggunakan perintah hapus komposer diikuti dengan nama paket. Misalnya, untuk menghapus paket “mypackage”, Anda akan menjalankan perintah berikut:

# Syntax composer remove mypackage12# Syntaxcomposer remove mypackage

Perintah ini akan menghapus paket dari dependensi proyek Anda dan menghapusnya dari folder `vendor`.
Memperbarui Pakets
Jika Anda perlu memperbarui paket ke versi terbaru, Anda dapat menggunakan perintah `composer update` diikuti dengan nama paket. Misalnya, untuk memperbarui paket “mypackage” ke versi terbaru, Anda akan menjalankan perintah berikut:

# Syntax composer update mypackage12# Syntaxcomposer update mypackage

Perintah ini akan memperbarui paket ke versi terbaru, seperti yang ditentukan dalam `composer.json ` file.

Anda juga dapat mengupdate semua paket dalam proyek Anda dengan menjalankan perintah `composer update` tanpa menentukan nama paket. paket yang Anda instal atau perbarui bergantung pada. Ini dikenal sebagai rantai ketergantungan dan penting untuk diperhatikan saat menginstal atau memperbarui paket.
Menggunakan composer.json

Berikutnya, Anda perlu membuat file composer.json di root proyek Anda. File ini akan berisi dependensi untuk proyek Anda, bersama dengan opsi konfigurasi tambahan. Struktur dasar file composer.json terlihat seperti ini:

{ “require”: { “package/name”: “version” } }12345{    “require”: {        “package/name”: “version”    }}

For misalnya, untuk meminta paket versi 2.0 bernama “mypackage”, file composer.json akan terlihat seperti ini:

{ “require”: { “mypackage”: “2.0” } }12345{    “require”: {        “mypackage” : “2.0”    }}

Setelah file composer.json dibuat, Anda dapat menggunakan perintah composer install untuk menginstal dependensi proyek Anda. Perintah ini akan melihat file composer.json, dan mendownload serta menginstal paket yang ditentukan dan dependensinya ke direktori vendor.

Anda juga dapat menggunakan perintah `composer update` untuk memperbarui dependensi Anda ke versi terbaru. Perintah ini akan melihat file composer.json dan memperbarui semua paket ke versi terbaru, atau ke versi tertentu jika ditentukan.
Mengelola versi paket berdasarkan lingkungan

Composer juga memungkinkan Anda menentukan versi paket yang berbeda untuk lingkungan yang berbeda. Misalnya, Anda dapat menentukan bahwa sebuah paket harus versi x dalam pengembangan dan versi y dalam produksi. Ini dilakukan dengan menggunakan kunci “require-dev” di file composer.json.

{ “require”: { “mypackage”: “2.0” }, “require-dev”: { “mypackage”: “3.0” } }12345678{    “require”: {        “mypackage”: “2.0”    },    “require-dev”: {        “mypackage”: “3.0”    }}

Composer juga menyediakan cara untuk memuat dependensi secara otomatis, yang dilakukan dengan membuat pemuatan otomatis file menggunakan perintah `composer dump-autoload`. File muat otomatis ini digunakan untuk memuat kelas secara otomatis dari dependensi, jadi Anda tidak perlu memasukkannya secara manual ke dalam kode Anda.
Menemukan paket yang sudah usang

Terakhir, penting untuk melacak dependensi Anda dan versinya dan untuk memastikannya terkini. Komposer menyediakan perintah `komposer kedaluwarsa` yang mencantumkan paket-paket yang memiliki pembaruan yang tersedia, dan perintah `komposer show –ketinggalan zaman` yang menampilkan versi terinstal dan versi terbaru yang tersedia. Sangat penting untuk secara teratur memeriksa pembaruan dan memperbaruinya untuk memastikan bahwa aplikasi Anda menggunakan versi terbaru dan teraman dari dependencies.

composer show --outdated 

Wrap Up

mengelola dependensi dalam proyek PHP. Ini memberikan cara yang sederhana dan elegan untuk mengelola dependensi, dan ini merupakan alat vital bagi setiap pengembang PHP. Dengan Composer, Anda dapat dengan mudah mengelola versi, dependensi, dan pemuatan otomatis, yang menghemat waktu dan mengurangi kompleksitas proyek Anda. Selain itu, ia menyediakan banyak fitur dan perintah untuk mengotomatisasi dan mengelola dependensi Anda, menjadikannya alat yang harus dimiliki untuk pengembangan PHP.

Referensi tecadmin.com

Terbaru

  • Inilah Caranya Mengajar Bahasa Indonesia di Amerika Serikat Lewat Beasiswa Fulbright FLTA 2026
  • Inilah 6 Rekomendasi HP yang Awet dan Tahan Lama Biar Kalian Nggak Gonta-ganti Terus!
  • Apa itu Proses BOP dan Psikotes BRI Life?
  • Ini Cara Input Tugas Tambahan Guru di EMIS GTK IMP 2026 Biar Jam Mengajar Aman!
  • APK Juice Pack Frenzy Penipuan? Benarkah Membayar atau Cuma Tipuan Iklan? Ini Faktanya!
  • Apakah Apk ReelAct Penipu? Mau Tarik 100 Dolar dari Reel Act? Cek Dulu Faktanya Biar Nggak Rugi Waktu!
  • Inilah Rekomendasi Game Turn Base Android dan PC Terbaik Buat Kalian yang Suka Strategi!
  • Inilah Cara Membuat Sertifikat di Canva dan Ukuran Standar yang Wajib Kalian Tahu
  • Inilah Aturan Zakat yang Bisa Jadi Pengurang Pajak Bruto Kalian, Sudah Tahu Belum?
  • Inilah Data Pendaftar KIP Kuliah 2026 Jalur SNBP dan Bocoran Kriteria yang Lolos!
  • Inilah Game Silent Hill: Townfall, Teror Psikologis Baru yang Bakal Bikin Kalian Gemetar di Tahun 2026!
  • Inilah Trailer Mortal Kombat 2, Johnny Cage Resmi Gabung dan Siap Hadapi Shao Kahn!
  • Inilah Spesifikasi Lengkap Samsung Galaxy S26 yang Baru Meluncur, Ternyata Harganya Naik Segini!
  • Inilah Cara Mematikan MSA Xiaomi Supaya HP Nggak Lemot dan Bebas Iklan, Ternyata Langkahnya Simpel Banget!
  • Inilah Kronologi Mobil Calya Plat D yang Viral Lawan Arus di Jakpus, Ternyata Bawa Banyak Plat Palsu!
  • Inilah Axioo Hype AI 5, Laptop AI Canggih yang Nggak Bikin Kantong Bolong!
  • Ini Loh Kejahatan Modus Phishing Google Tasks Terbaru yang Bisa Nguras Data Perusahaan Kalian
  • Inilah Poco X7 5G dan M7 Pro 5G, HP Gaming Performa Ekstrem yang Ngebikin Mabar Kalian Jadi Anti Lag!
  • Inilah Cara Mengubah Lahan Kosong Jadi Uang Lewat Strategi Land Banking
  • Ini Trik Supaya Gajian YouTube Shorts Tembus Puluhan Juta dari Penonton Bule!
  • Jangan Sampai Keliru! Begini Cara Cek Total Jam Linear dan Non Linear di EMIS GTK IMP 2026
  • Cuma Nonton Drama Pendek Bisa Cair Uang Tunai? Bongkar Habis Kebenaran Aplikasi FunFlick di Sini!
  • Apa itu Resetter Epson L3210?
  • Ini Loh Ukuran A4, F4, A3, B5, A5 di Canva Biar Hasil Cetakan Kalian Nggak Terpotong!
  • Inilah Cara Transfer Pulsa Telkomsel Paling Update 2026, Lengkap dengan Biaya dan Syarat Terbarunya!
  • Inilah Xolo.io, Solusi Praktis Buat Kalian yang Pengen Bangun Startup Skala Global Tanpa Harus Pindah ke Luar Negeri
  • Inilah Caranya Lapor SPT Tahunan Lewat Coretax Supaya Nggak Kena Denda
  • Inilah Alasan Kenapa Software House Lokal Susah Dapat Insentif Pajak R&D dan Isu Amortisasi Pegawai yang Bikin Pusing
  • Inilah Alasan Kenapa Developer Game Indonesia Lagi Curhat Soal Pajak: Kasus Toge Productions
  • Inilah Alasan Ilmiah Kenapa Lampu Lalu Lintas Pakai Warna Merah, Kuning, dan Hijau!
  • How to Fix Error Code 0x80073d21 for Enhanced Speech Recognition on Windows
  • What is DNS-Persist-01? Let’s Encrypt’s New Solution for Reliable SSL Validation
  • How to Use User Accounts & System Admin on Linux Mint 23
  • What is Docker Digest Watching? Understanding the New Standard in Docker 8.2
  • What is LibreOffice Online? A Guide to the Community-Driven Cloud Office Suite
  • Prompt AI Menyusun Script Pola Suara Karakter agar Brand Jadi Ikonik
  • Prompt AI untuk Merancang Karakter Brand yang Ikonik
  • Prompt AI Audit Konten Sesuai Karakter Brand
  • Prompt AI Merubah Postingan LinkedIn Jadi Ladang Diskusi dengan ChatGPT
  • Prompt AI: Paksa Algoritma LinkedIn Promosikan Konten Kalian
  • Apa itu Spear-Phishing via npm? Ini Pengertian dan Cara Kerjanya yang Makin Licin
  • Apa Itu Predator Spyware? Ini Pengertian dan Kontroversi Penghapusan Sanksinya
  • Mengenal Apa itu TONESHELL: Backdoor Berbahaya dari Kelompok Mustang Panda
  • Siapa itu Kelompok Hacker Silver Fox?
  • Apa itu CVE-2025-52691 SmarterMail? Celah Keamanan Paling Berbahaya Tahun 2025
Beli Morning Star Kursi Gaming/Kantor disini: https://s.shopee.co.id/805iTUOPRV
Beli Pemotong Rumput dengan Baterai IRONHOOF 588V Mesin Potong Rumput 88V disini https://s.shopee.co.id/70DBGTHtuJ

©2026 emka.web.id | Design: Newspaperly WordPress Theme