CodeIgniter 2.0 - 2. Helper.pdf
CodeIgniter 2.0
Devid Haryalesmana Wahid
Helper
[email protected]
HELPER
CodeIgniter 2.0
TUJUAN INSTRUKSIONAL KHUSUS
Setelah mengikuti kuliah ini, mahasiswa diharapkan dapat:
1.
2.
3.
4.
Memahami konsep helper
Mengetahui helper-helper yang terdapat pada CodeIgniter 2.0
Membuat custom helper
Membuat aplikasi yang memanfaatkan helper pada CodeIgniter 2.0
Dasar Teori
Helper
Helper, seperti namanya, fungsi dari helper adalah membantu tugas anda untuk
mempermudah penulisan kode Anda. Sehingga dengan menggunakan helper dapat
mempersingkat waktu pengerjaan aplikasi Anda. Di setiap helper terdiri dari beberapa fungsi
dengan kategori tertentu. Misalnya Url Helper berfungsi untuk membantu anda membuat linklink, Form Helper yang membantu anda membuat elemen-elemen form, Text Helper yang
membantu anda memformat sebuah teks yang umumnya sering dilakukan, Cookie Helper untuk
membaca dan membuat cookies, File Helper yang membantu menangani file-file, dsb.
Tidak seperti komponen sistem CodeIgniter lainnya, helper tidak ditulis berbasis Object
Oriented Program. Helper disini murni sebuah fungsi prosedural. Setiap helper menangani tugas
yang spesifik dengan tidak ada ketergantungan satu sama lain.
Secara default, CodeIgniter tidak langsung memuat file Helper, maka kita perlu
memuatnya terlebih dahulu, dan ketika sudah dimuat, maka fungsi tersebut akan terbaca secara
global di Controller dan View anda.
1
File Helper secara default terletak di folder system/helpers, dan jika anda ingin membuat
helper anda sendiri yang tidak bisa ditangani helper bawaan system, maka anda dapat membuat
file helper anda sendiri di folder application/helpers. Dalam pertama kali program dijalankan,
system mencari dulu fungsi yang dipanggil ke folder application/helpers. Jika tidak ditemukan,
maka system baru akan mencari ke folder system/helpers.
Memuat Helper
Memuat helper sangatlah mudah, cukup mengetikkan sintak berikut:
$this->load->helper(‘name’);
Name disini adalah nama helper tanpa ekstensi .php dan tanda _helper. Contohnya,
untuk memuat file URL Helper, dimana nama filenya url_helper.php, anda cukup menuliskan
$this->load->helper(‘url’); Sebuah helper dapat dimuat dibagian mana saja, bahkan di View
(walaupun ini bukan cara yang disarankan), yang terpenting muat dulu helper tersebut sebelum
anda menggunakan fungsi-fungsi yang terdapat pada helper tersebut. Anda dapat menulisnya
pada salah satu fungsi pada controller, atau anda tulis di constructor pada controller anda
sehingga dapat terbaca di semua fungsi secara otomatis.
Anda dapat memuat helper lebih dari satu dengan menggunakan array(). Contohnya,
$this->load->helper(array(‘helper1’, ‘helper2’, ‘helper3’)); Anda juga dapat membuat helper
menjadi global disemua controller dengan cara membuka file application/config/autoload.php
dan tambahkan nama helper pada array helper yang akan dibuat secara otomatis dimuat
disemua Controller.
Membuat Custom Helper
Untuk membuat Custom Helper anda sendiri, cukup dengan membuat file
fungsiku_helper.php, kemudian langsung saja tuliskan daftar function nama_fungsi($params)
buatan anda sendiri, simpan pada direktori application/helpers. Harap diperhatikan dalam
penamaan file harus diakhiri dengan “_helper.php”. Sedangkan untuk pemuatan helpernya
hanya perlu menggunakan nama dari helper tersebut itu saja (misal: fungsiku).
2
Latihan
Dalam latihan berikut ini, anda akan mengenal dan menggunakan helper yang
dimiliki CodeIgniter. Tidak semua helper akan dipraktikan di jobsheet ini, anda dapat
mengeksplor sendiri helper lain di daftar isi user guide yang sudah disertakan
(http://localhost/[nama_situs]/user_guide/toc.html)
HTML Helper
Untuk memuat HTML helper, tuliskan kode berikut di bagian awal kode, constructor,
atau autoload di folder config:
Fungsi-fungis yang tersedi pada HTML helper adalah:
br()
heading()
img()
link_tag()
nbs()
ol() dan ul()
Fungsi br()
Fungsi br() berguna untuk menghasilkan kode sebanyak angka yang ditulis
pada parameternya. Contoh
Kode di atas akan menghasilkan:
Fungsi heading()
Fungsi heading() berguna untuk menghasilkan tag heading . Parameter
pertama berisi data/teks heading, parameter kedua berisi ukuran heading, dan
paramater ketiga untuk menambahkan id, class, atau style tambahan. Contoh:
Kode di atas akan menghasilkan: Welcome!
Fungsi img()
Fungsi img() berguna untuk menghasilkan tag . Parameter pertama untuk
url sumber gambar, dan parameter kedua berupa TRUE/FALSE untuk
menambahkan nilai di $config[‘index_page’] pada url sumber gambar. Contoh:
3
Kode di atas akan menghasilkan:
, sedangkan:
Kode di atas akan menghasilkan:
Jika anda ingin menambahkan attribut lain, maka anda dapat menggunakan sebuah
array, seperti contoh berikut:
Fungsi link_tag()
Fungsi link_tag() berfungsi untuk menghasilkan tag yang berguna untuk
memuat css, rss, dll. Parameter pertama berupa alamat file atau target (href),
diikuti parameter opsional sesuai urutan berikut, rel, type, title, media, dan
index_page. Index_page disini adalah berupa nila TRUE/FALSE seperti pada
parameter kedua fungsi img(). Contoh Penggunaan:
Kode di atas akan menghasilkan:
Contoh lebih lanjut:
Seperti halnya fungsi img(), anda bisa mengontrol semua attribut yang akan
dihasilkan dengan menggunakan array();
Fungsi nbs()
Fungsi nbs() berfungsi untuk menghasilkan tag non-breaking spaces ( )
sebanyak nilai yang anda masukkan pada parameter pertama seperti fungsi br();
Fungsi ul() dan ol()
4
Fungsi ini berfungsi untuk menghasilkan tag unordered list atau ordered list dari
array sederhana atau array multidimensional. Parameter pertama berisi list text,
dan parameter kedua untuk menambahkan attribut. Contoh:
Kode diatas akan menghasilkan:
colors
red
blue
green
shapes
round
suare
circles
5
elipse
oval
sphere
moods
happy
upset
defeated
dejected
disheartened
depressed
annoyed
cross
angry
URL Helper
Sepertinya namanya, helper ini berfungsi untuk menangani tugas berkaitan dengan
URL. Untuk memuat URL helper, tuliskan kode berikut di bagian awal kode,
constructor, atau autoload di folder config:
Fungsi site_url() dan base_url()
Fungsi ini berguna untuk menghasilkan URL utama yang portabel. Maksud dari
portabel ini adalah, jika anda akan mengunggah web dari localhost ke tempat
hosting, anda tidak perlu mengubah satu persatu link anda, karena fungsi ini akan
mendeteksi URL utama anda yang ada pada $config[‘base_url’]. Pada fungsi
site_url() akan menghasilkan URL utama ditambahkan index_page (index.php)
dan url_suffix (.html). Sedangkan pada base_url hanya menghasilkan URL utama
tanpa index_page atau url_suffix.
6
Kode di atas akan menghasilkan: http://example.com/index.php/news/local/123
Kode di atas akan menghasilkan: http://example.com/blog/post/123
Fungsi current_url()
Fungsi ini untuk menghasilkan url penuh halaman yang sedang ditampilkan
(termasuk segmen-segmennya)
Fungsi anchor()
Fungsi ini untuk menghasilkan tag anchor berdasarkan URL situs lokal anda.
Parameter pertama berisi url, tag kedua berisi teks yang ditampilkan, parameter
ketiga untuk menambahkan attribut lainnya. Contoh:
Kode diatas akan menghasilkan:
My
News
Fungsi redirect()
Fungsi ini akan berguna pada logika program anda di controller. Berguna untuk
mengarahkan halaman ke halaman lain. Contoh:
Form Helper
Form helper digunakan untuk menghasilkan sintak HTML yang berkaitan dengan
form. Untuk memuat Form helper, tuliskan kode berikut di bagian awal kode,
constructor, atau autoload di folder config:
Fungsi form_open() dan form_close()
Fungsi ini berguna untuk menghasilkan tag html . Pada
form_open(), parameter pertama berisi url action form, parameter kedua berisi
attribut tambahan.
7
Kode di atas akan menghasilkan:
Fungsi form_hidden(), form_password, form_upload(), form_input()
form_textarea(), form_submit, form_reset(), form_button()
Fungsi form_hidden() digunakan untuk menghasilkan tag dengan tipe
hidden, form_password() untuk menghasilkan tag dengan tipe password,
form_upload() untuk menghasilkan tag dengan tipe file untuk diupload,
form_input() untuk menghasilkan tag dengan tipe teks biasa,
form_textarea() untuk menghasilkan tag , form_submit() untuk
menghasilkan tag dengan tipe submit, form_reset() untuk menghasilkan tag
dengan tipe reset, dan form_button() untuk menghasilkan tag .
Semua tag diatas memiliki kesamaan cara penggunaan, dimana parameter pertama
adalah “name” dari form tersebut, parameter kedua adalah “teks” atau “value” yang
akan ditampilkan, dan parameter ketiga digunakan untuk menambahkan atributatribut lain seperti id, class, style, bahkan onClick juga. Contoh:
Kode diatas akan menghasilkan:
Fungsi form_dropdown()
Fungsi ini untuk menghasilkan tag . Parameter pertama untuk “name”,
parameter kedua untuk berupa array, parameter ketiga untuk default
option yang akan dipilih (selected), dan parameter keempat untuk atribut-atribut
tambahan lainnya. Contoh:
Kode diatas akan menghasilkan:
Small Shirt
Medium Shirt
8
Large Shirt
Extra Large Shirt
Fungsi form_checkbox() dan form_radio()
Fungsi ini digunakan untuk menghasilkan tag dengan tipe checkbox atau
radio. Parameter pertama untuk “name” dari input tersebut, parameter kedua untuk
“value”, dan parameter ketiga berupa nilai TRUE/FALSE untuk menentukan checkbox
atau radio yang dipilih. Contoh:
Kode di atas akan menghasilkan:
Fungsi form_label()
Fungsi ini digunakan untuk menghasilkan tag , dimana parameter pertama
untuk teks yang akan ditampilkan, dan parameter kedua berisi atribut “for” yaitu
“name” dari form input yang diberi label. Contoh:
Kode di atas akan menghasilkan:
What is your Name
9
Tugas Praktikum
1. Buatlah sebuah halaman web beserta formnya yang menggunakan semua helper yang
disebutkan diatas kecuali fungsi opsional berikut: link_tag(), redirect(), base_url(),
site_url(), current_url(). Pastikan web tertata dengan rapi dan selogis mungkin isinya.
2. Buatlah custom helper buatan anda sendiri (misal fungsi menampilkan tanggal, bulan, dan
tahun hari ini), dan terapkan juga pada tugas no.1
10
Devid Haryalesmana Wahid
Helper
[email protected]
HELPER
CodeIgniter 2.0
TUJUAN INSTRUKSIONAL KHUSUS
Setelah mengikuti kuliah ini, mahasiswa diharapkan dapat:
1.
2.
3.
4.
Memahami konsep helper
Mengetahui helper-helper yang terdapat pada CodeIgniter 2.0
Membuat custom helper
Membuat aplikasi yang memanfaatkan helper pada CodeIgniter 2.0
Dasar Teori
Helper
Helper, seperti namanya, fungsi dari helper adalah membantu tugas anda untuk
mempermudah penulisan kode Anda. Sehingga dengan menggunakan helper dapat
mempersingkat waktu pengerjaan aplikasi Anda. Di setiap helper terdiri dari beberapa fungsi
dengan kategori tertentu. Misalnya Url Helper berfungsi untuk membantu anda membuat linklink, Form Helper yang membantu anda membuat elemen-elemen form, Text Helper yang
membantu anda memformat sebuah teks yang umumnya sering dilakukan, Cookie Helper untuk
membaca dan membuat cookies, File Helper yang membantu menangani file-file, dsb.
Tidak seperti komponen sistem CodeIgniter lainnya, helper tidak ditulis berbasis Object
Oriented Program. Helper disini murni sebuah fungsi prosedural. Setiap helper menangani tugas
yang spesifik dengan tidak ada ketergantungan satu sama lain.
Secara default, CodeIgniter tidak langsung memuat file Helper, maka kita perlu
memuatnya terlebih dahulu, dan ketika sudah dimuat, maka fungsi tersebut akan terbaca secara
global di Controller dan View anda.
1
File Helper secara default terletak di folder system/helpers, dan jika anda ingin membuat
helper anda sendiri yang tidak bisa ditangani helper bawaan system, maka anda dapat membuat
file helper anda sendiri di folder application/helpers. Dalam pertama kali program dijalankan,
system mencari dulu fungsi yang dipanggil ke folder application/helpers. Jika tidak ditemukan,
maka system baru akan mencari ke folder system/helpers.
Memuat Helper
Memuat helper sangatlah mudah, cukup mengetikkan sintak berikut:
$this->load->helper(‘name’);
Name disini adalah nama helper tanpa ekstensi .php dan tanda _helper. Contohnya,
untuk memuat file URL Helper, dimana nama filenya url_helper.php, anda cukup menuliskan
$this->load->helper(‘url’); Sebuah helper dapat dimuat dibagian mana saja, bahkan di View
(walaupun ini bukan cara yang disarankan), yang terpenting muat dulu helper tersebut sebelum
anda menggunakan fungsi-fungsi yang terdapat pada helper tersebut. Anda dapat menulisnya
pada salah satu fungsi pada controller, atau anda tulis di constructor pada controller anda
sehingga dapat terbaca di semua fungsi secara otomatis.
Anda dapat memuat helper lebih dari satu dengan menggunakan array(). Contohnya,
$this->load->helper(array(‘helper1’, ‘helper2’, ‘helper3’)); Anda juga dapat membuat helper
menjadi global disemua controller dengan cara membuka file application/config/autoload.php
dan tambahkan nama helper pada array helper yang akan dibuat secara otomatis dimuat
disemua Controller.
Membuat Custom Helper
Untuk membuat Custom Helper anda sendiri, cukup dengan membuat file
fungsiku_helper.php, kemudian langsung saja tuliskan daftar function nama_fungsi($params)
buatan anda sendiri, simpan pada direktori application/helpers. Harap diperhatikan dalam
penamaan file harus diakhiri dengan “_helper.php”. Sedangkan untuk pemuatan helpernya
hanya perlu menggunakan nama dari helper tersebut itu saja (misal: fungsiku).
2
Latihan
Dalam latihan berikut ini, anda akan mengenal dan menggunakan helper yang
dimiliki CodeIgniter. Tidak semua helper akan dipraktikan di jobsheet ini, anda dapat
mengeksplor sendiri helper lain di daftar isi user guide yang sudah disertakan
(http://localhost/[nama_situs]/user_guide/toc.html)
HTML Helper
Untuk memuat HTML helper, tuliskan kode berikut di bagian awal kode, constructor,
atau autoload di folder config:
Fungsi-fungis yang tersedi pada HTML helper adalah:
br()
heading()
img()
link_tag()
nbs()
ol() dan ul()
Fungsi br()
Fungsi br() berguna untuk menghasilkan kode sebanyak angka yang ditulis
pada parameternya. Contoh
Kode di atas akan menghasilkan:
Fungsi heading()
Fungsi heading() berguna untuk menghasilkan tag heading . Parameter
pertama berisi data/teks heading, parameter kedua berisi ukuran heading, dan
paramater ketiga untuk menambahkan id, class, atau style tambahan. Contoh:
Kode di atas akan menghasilkan: Welcome!
Fungsi img()
Fungsi img() berguna untuk menghasilkan tag . Parameter pertama untuk
url sumber gambar, dan parameter kedua berupa TRUE/FALSE untuk
menambahkan nilai di $config[‘index_page’] pada url sumber gambar. Contoh:
3
Kode di atas akan menghasilkan:
, sedangkan:
Kode di atas akan menghasilkan:
Jika anda ingin menambahkan attribut lain, maka anda dapat menggunakan sebuah
array, seperti contoh berikut:
Fungsi link_tag()
Fungsi link_tag() berfungsi untuk menghasilkan tag yang berguna untuk
memuat css, rss, dll. Parameter pertama berupa alamat file atau target (href),
diikuti parameter opsional sesuai urutan berikut, rel, type, title, media, dan
index_page. Index_page disini adalah berupa nila TRUE/FALSE seperti pada
parameter kedua fungsi img(). Contoh Penggunaan:
Kode di atas akan menghasilkan:
Contoh lebih lanjut:
Seperti halnya fungsi img(), anda bisa mengontrol semua attribut yang akan
dihasilkan dengan menggunakan array();
Fungsi nbs()
Fungsi nbs() berfungsi untuk menghasilkan tag non-breaking spaces ( )
sebanyak nilai yang anda masukkan pada parameter pertama seperti fungsi br();
Fungsi ul() dan ol()
4
Fungsi ini berfungsi untuk menghasilkan tag unordered list atau ordered list dari
array sederhana atau array multidimensional. Parameter pertama berisi list text,
dan parameter kedua untuk menambahkan attribut. Contoh:
Kode diatas akan menghasilkan:
colors
red
blue
green
shapes
round
suare
circles
5
elipse
oval
sphere
moods
happy
upset
defeated
dejected
disheartened
depressed
annoyed
cross
angry
URL Helper
Sepertinya namanya, helper ini berfungsi untuk menangani tugas berkaitan dengan
URL. Untuk memuat URL helper, tuliskan kode berikut di bagian awal kode,
constructor, atau autoload di folder config:
Fungsi site_url() dan base_url()
Fungsi ini berguna untuk menghasilkan URL utama yang portabel. Maksud dari
portabel ini adalah, jika anda akan mengunggah web dari localhost ke tempat
hosting, anda tidak perlu mengubah satu persatu link anda, karena fungsi ini akan
mendeteksi URL utama anda yang ada pada $config[‘base_url’]. Pada fungsi
site_url() akan menghasilkan URL utama ditambahkan index_page (index.php)
dan url_suffix (.html). Sedangkan pada base_url hanya menghasilkan URL utama
tanpa index_page atau url_suffix.
6
Kode di atas akan menghasilkan: http://example.com/index.php/news/local/123
Kode di atas akan menghasilkan: http://example.com/blog/post/123
Fungsi current_url()
Fungsi ini untuk menghasilkan url penuh halaman yang sedang ditampilkan
(termasuk segmen-segmennya)
Fungsi anchor()
Fungsi ini untuk menghasilkan tag anchor berdasarkan URL situs lokal anda.
Parameter pertama berisi url, tag kedua berisi teks yang ditampilkan, parameter
ketiga untuk menambahkan attribut lainnya. Contoh:
Kode diatas akan menghasilkan:
My
News
Fungsi redirect()
Fungsi ini akan berguna pada logika program anda di controller. Berguna untuk
mengarahkan halaman ke halaman lain. Contoh:
Form Helper
Form helper digunakan untuk menghasilkan sintak HTML yang berkaitan dengan
form. Untuk memuat Form helper, tuliskan kode berikut di bagian awal kode,
constructor, atau autoload di folder config:
Fungsi form_open() dan form_close()
Fungsi ini berguna untuk menghasilkan tag html . Pada
form_open(), parameter pertama berisi url action form, parameter kedua berisi
attribut tambahan.
7
Kode di atas akan menghasilkan:
Fungsi form_hidden(), form_password, form_upload(), form_input()
form_textarea(), form_submit, form_reset(), form_button()
Fungsi form_hidden() digunakan untuk menghasilkan tag dengan tipe
hidden, form_password() untuk menghasilkan tag dengan tipe password,
form_upload() untuk menghasilkan tag dengan tipe file untuk diupload,
form_input() untuk menghasilkan tag dengan tipe teks biasa,
form_textarea() untuk menghasilkan tag , form_submit() untuk
menghasilkan tag dengan tipe submit, form_reset() untuk menghasilkan tag
dengan tipe reset, dan form_button() untuk menghasilkan tag .
Semua tag diatas memiliki kesamaan cara penggunaan, dimana parameter pertama
adalah “name” dari form tersebut, parameter kedua adalah “teks” atau “value” yang
akan ditampilkan, dan parameter ketiga digunakan untuk menambahkan atributatribut lain seperti id, class, style, bahkan onClick juga. Contoh:
Kode diatas akan menghasilkan:
Fungsi form_dropdown()
Fungsi ini untuk menghasilkan tag . Parameter pertama untuk “name”,
parameter kedua untuk berupa array, parameter ketiga untuk default
option yang akan dipilih (selected), dan parameter keempat untuk atribut-atribut
tambahan lainnya. Contoh:
Kode diatas akan menghasilkan:
Small Shirt
Medium Shirt
8
Large Shirt
Extra Large Shirt
Fungsi form_checkbox() dan form_radio()
Fungsi ini digunakan untuk menghasilkan tag dengan tipe checkbox atau
radio. Parameter pertama untuk “name” dari input tersebut, parameter kedua untuk
“value”, dan parameter ketiga berupa nilai TRUE/FALSE untuk menentukan checkbox
atau radio yang dipilih. Contoh:
Kode di atas akan menghasilkan:
Fungsi form_label()
Fungsi ini digunakan untuk menghasilkan tag , dimana parameter pertama
untuk teks yang akan ditampilkan, dan parameter kedua berisi atribut “for” yaitu
“name” dari form input yang diberi label. Contoh:
Kode di atas akan menghasilkan:
What is your Name
9
Tugas Praktikum
1. Buatlah sebuah halaman web beserta formnya yang menggunakan semua helper yang
disebutkan diatas kecuali fungsi opsional berikut: link_tag(), redirect(), base_url(),
site_url(), current_url(). Pastikan web tertata dengan rapi dan selogis mungkin isinya.
2. Buatlah custom helper buatan anda sendiri (misal fungsi menampilkan tanggal, bulan, dan
tahun hari ini), dan terapkan juga pada tugas no.1
10