Download the PHP package krisanalfa/b-comp without Composer
On this page you can find all versions of the php package krisanalfa/b-comp. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package b-comp
B-Comp
B-Comp adalah komponen Bono yang biasa sering saya gunakan di tiap project. Modul ini dibuat karena Bono tidak memiliki beberapa fitur, dan saya membutuhkannya di sebuah project. Untuk membantu teman-teman agar lebih cepat membangun aplikasi, saya ciptakan modul componen ini. Secara offical, Viper Arch menggunakan BComp sebagai steroid aplikasi. Secara garis besar (sementara), B-Comp bisa menambahkan fitur:
- Logging
- Simple Versioning System
- Helper
Instalasi
Cukup tambahkan di file composer.json
kamu seperti berikut:
Lalu jalankan, composer update
. Atau bisa juga melalui command composer require krisanalfa/b-comp dev-master
.
Logging
Logging dapat ditambahkan ke Bono dengan menambahkan provider LogProvider
. Caranya, masukkan LogProvider
ke dalam konfigurasi bono.providers
kamu:
Konfigurasi
Secara garis besar, berikut konfigurasi yang dapat diubah.
log.name
Nama aplikasi kamu sebagai penanda channel log. Default APP LOGGER
.
log.path
Path dimana kamu menyimpan log aplikasi kamu. Default logs
. Jika folder logs
belum ada, maka Provider akan otomatis membuatkannya untuk kamu. Lokasinya relatif terhadap base path aplikasi Bono kamu.
log.dateformat
Format tanggal event log di dalam log file kamu. Default Y-m-d H:i:s
.
log.fileformat
Format log file kamu. Default Y-m-d
.
log.outputformat
Format output log. Default:
%datetime%
adalah tanggal / waktu event log ditulis.%level_name%
adalah level log event (EMERGENCY|ALERT|CRITICAL|ERROR|WARN|NOTICE|INFO|DEBUG).%message%
adalah pesan log ketika ditulis.%context%
adalah konteks yang dituliskan di dalam event log, nilainya bisa array yang otomatis akan dikonversi ke dalam JSON.%extra%
adalah informasi ekstra yang ditulis di dalam event log.
Cara Menggunakan
Setelah menambahkan provider, maka kita bisa mengakses log
dari Slim Container
.
Simple Versioning System
Simple Versioning System akan memudahkan kamu untuk memisahkan konfigurasi antar mesin, selain itu dia juga bisa mengatur konfigurasi yang mana yang digunakan di production dan development. Sebenarnya Bono memiliki kemampuan ini, namun bagi saya masih cukup sulit untuk di-maintain, sehingga saya memberikan cara me-manage konfigurasi yang lebih mudah di-maintain.
Instalasi
Tambahkan VersionProvider
ke dalam konfigurasi bono.providers
kamu.
Pada saat mesin mengetahui bahwa aplikasi berjalan di mesin dengan nama hostname farid.macbook
, maka provider akan berusaha mencari file konfigurasi bernama {base_path_bono_app}/config/env/local.php
, karena farid.macbook
berada dalam list local
.
Sebaliknya, pada saat mesin mengetahui bahwa aplikasi berjalan di mesin dengan nama semut
, maka provider akan berusaha mencari file konfigurasi bernama {base_path_bono_app}/config/env/remote.php
, karena farid.macbook
berada dalam list remote
.
Selain itu, jika hostname-nya adalah alfa.macbook
, provider akan mencari file konfigurasi dengan nama {base_path_bono_app}/config/host/alfa.macbook.php
.
Untuk mengubah state aplikasi dari development
menjadi production
, ubah konfigurasi instansiasi Bono\App
seperti berikut:
Ubah bagian mode
menjadi production
jika memang aplikasi sudah siap ke tahap production. Selain itu pastikan debug
dan bono.debug
bernilai false
.
Jika aplikasi dalam mode production, maka provider akan mencari file konfigurasi bernama {base_path_bono_app}/config/mode/production.php
.
Sebaliknya, jika aplikasi dalam mode development, maka provider akan mencari file konfigurasi bernama {base_path_bono_app}/config/mode/development.php
.
Helper
Hanya ada dua helper untuk saat ini, yaitu Arr
(untuk array helper), dan Str
(untuk string helper).
Arr
Berikut adalah snippet penggunaan helper:
Dan masih banyak lagi, untuk lebih jelasnya, lihat source code.
Str
Berikut adalah snippet penggunaan helper:
Dan masih banyak lagi, untuk lebih jelasnya, lihat source code.