Rabu, 02 Maret 2016
Tentang Entry Scripts di Yii2
Entry script adalah langkah pertama dalam proses bootstrapping aplikasi. Sebuah aplikasi, baik web maupun console, memiliki satu entry script. User mengirim request kepada entry script yang membuat aplication instance dan meneruskan request kepadanya.Entry script untuk aplikasi Web harus disimpan dibawah direktori yang dapat diakses dari web, sehingga dapat diakses oleh user. Biasanya entry script untuk web diberi nama index.php. Tetapi tidak menutup kemungkinan untuk diberi nama yang lain, asalkan dapat diakses oleh webserver.
Entry script untuk aplikasi console biasanya disimpan dalam path utama aplikasi, biasanya dinamai dengan nama yii.php dan harus dibuat executable supaya user dapat menjalankan console application melalui peritnah ./yii <route> [arguments] [options]
Entry script pada dasarnya melakukan beberapa hal berikut:
- Mendefinisikan konstan global.
- Me-register Composer autoloader.
- Meng-include file class Yii.
- Memuat konfigurasi aplikasi.
- Membuat dan mengkonfigurasi application instance.
- Memanggil yii\base\Application::run() untuk memproses request.
Aplikasi Web Yii2
Berikut adalah kode dalam entry script untuk Basic Web Project Template.<?php defined('YII_DEBUG') or define('YII_DEBUG', true); defined('YII_ENV') or define('YII_ENV', 'dev'); // register Composer autoloader require(__DIR__ . '/../vendor/autoload.php'); // include Yii class file require(__DIR__ . '/../vendor/yiisoft/yii2/Yii.php'); // load application configuration $config = require(__DIR__ . '/../config/web.php'); // create, configure and run application (new yii\web\Application($config))->run();
Aplikasi Console Yii2
Berikut adalah kode entry script untuk aplikasi console:#!/usr/bin/env php <?php /** * Yii console bootstrap file. * * @link http://www.yiiframework.com/ * @copyright Copyright (c) 2008 Yii Software LLC * @license http://www.yiiframework.com/license/ */ defined('YII_DEBUG') or define('YII_DEBUG', true); // register Composer autoloader require(__DIR__ . '/vendor/autoload.php'); // include Yii class file require(__DIR__ . '/vendor/yiisoft/yii2/Yii.php'); // load application configuration $config = require(__DIR__ . '/config/console.php'); $application = new yii\console\Application($config); $exitCode = $application->run(); exit($exitCode);
Mendefinisikan konstanta di Yii2
Entry scripts adalah tempat terbaik untuk mendefiniskan konstanta global. Yii mendukung tiga konstanta berikut:- YII_DEBUG mengindikasikan apakah aplikasi berjalan di debug mode. Saat di debug mode, aplikasi akan membuat informasi log yang lebih detail, terutama apabila terjadi error. Untuk alasan ini, debug mode harusnya digunakan hanya saat proses pengembangan. Nilai default dari YII_DEBUG adalah false.
- YII_ENV mengindikasikan lingkungan berjalannya aplikasi. Nilai default YII_ENV is prod, yang artinya aplikasi berjalan di lingkungan production.
- YII_ENABLE_ERROR_HANDLER mengindikasikan apakah error handler yang disediakan oleh Yii diaktifkan. Nilai default dari konstanta ini adalah true.
Saat mendefinisikan konstanta, sering kali kita menggunakan kode seperti berikut:
defined('YII_DEBUG') or define('YII_DEBUG', true);yang mana sebenarnya sama dengan kode berikut :
if (!defined('YII_DEBUG')) { define('YII_DEBUG', true); }Jelas sekali bahwa yang pertama lebih ringkas dan mudah dipahami.
Defninisi konstanta harus dilakukan pada awal entry script, supaya dapat diakses oleh file-file PHP yang di include.
loading...
Langganan:
Posting Komentar
(
Atom
)
Popular Posts
-
Secara default, Yii2 dibekali oleh template Bootstrap 3. Namun kita juga bisa menambahkan template lain yang lebih baik, seperti misalnya ...
-
Pada tutorial ini, saya akan membahas bagaimana cara membuat aplikasi CRUD (Create Read Update Delete) database secara otomatis dengan mengg...
-
RBAC (Role-Based Access Control) adalah konsep Access Control di Yii2 yang memisahkan hak akses user berdasarkan role atau peran. Yii2 sen...
© Asudahlah.com 2016 . Powered by Twitter Bootstrap , Blogger
Tidak ada komentar :
Posting Komentar