Mode pada Slim Framework

No Comments
Halo teman-teman, apa kabar? Semoga baik-baik saja. Rasanya tidak enak jika saya tidak menyelesaikan tulisan sebelumnya Konfigurasi pada Slim Framework. Kali ini saya akan membahas tentang konfigurasi lanjutan yaitu tentang "Mode" pada Slim Framework.

Kebanyakan developer pada saat ini menggunakan mode sebagai sebuah status dalam project tersebut. Sebagai contoh, jika sebuah aplikasi masih di-develop, maka Anda akan menggunakan mode development. Jika sebuah aplikasi masih dalam tahap testing, maka akan menggunakan mode testing. Begitu juga halnya pada saat production, akan menggunakan mode production. Atau mungkin ada mode-mode yang lain selain yang saya sebutkan tadi.

Apa itu Mode pada Slim?

Secara teknis, mode aplikasi hanyalah teks biasa - seperti "development" atau "production" - yang memiliki fungsi callback yang digunakan untuk menyiapkan aplikasi Slim. Model aplikasi dapat menjadi apa pun yang Anda suka: "test", "production", "development", atau bahkan "foo".

Bagaimana cara men-setting mode?

Cara yang pertama adalah dengan menggunakan PHP Superglobal Variable yaitu $_ENV. Contohnya seperti di bawah ini:

<?php 
$_ENV['SLIM_MODE'] = 'production';

Key dari variable di atas adalah SLIM_MODE.

Cara kedua adalah dengan melakukan setting seperti pada artikel sebelunya dengan key 'mode'. Contohnya seperti di bawah ini:

<?php
$app = new \Slim\Slim(array(
    'mode' => 'production'
));


Secara default Slim framework menggunakan 'development' sebagai mode awalnya.

Konfigurasi Mode secara Spesifik

Setelah inisiasi applikasi, Anda dapat mengkonfigurasi spesifik mode dengan menggunakan fungsi configureMode(). Contohnya adalah sebagai berikut:

<?php
// Set the current mode
$app = new \Slim\Slim(array(
    'mode' => 'production'
));

// Only invoked if mode is "production"
$app->configureMode('production', function () use ($app) {
    $app->config(array(
        'log.enable' => true,
        'debug' => false
    ));
});

// Only invoked if mode is "development"
$app->configureMode('development', function () use ($app) {
    $app->config(array(
        'log.enable' => false,
        'debug' => true
    ));
});

Pada mode production, ter-setting log aktif dan debug tidak aktif. Sedangkan pada mode development, tersetting log non aktif dan debug aktif.
Next PostNewer Post Previous PostOlder Post Home

0 komentar

Post a Comment