Web Programming

Mempelajari penggunaan Fungsi (Function) didalam PHP

Fungsi meruapakan hal yang paling penting dalam membuat aplikasi web. Dengan membagi kode-kode yang ada kedalam fungsi-fungsi maka akan memudahkan kita apabila kita akan menggunakan kembali kode tersebut. Atau apabila kita ingin membuat website dengan fitur yang sama dengan website yang pernah kita buat maka kita cukup menggunakan fungsi-fungsi yang pernah kita buat.

Hal ini akan sangat menghemat waktu dan mempercepat proses pembuatan website. Karena itu semakin banyak fungsi yang sudah anda buat, maka jika anda disuruh membuat website lagi anda cukup mengambil fungsi-fungsi yang sudah ada.
Selalu gunakan fungsi karena akan sangat membantu anda sedangkan pada konsep pemrograman berorientasi object (OOP) selalu gunakan class.

Fungsi pada PHP sintaxnya adalah function namafungsi() dimana namafungsi merupakan nama fungsi tersebut dan bisa anda ganti sesuka hati. Sedangkan isi didalam kurung dapat diisi dengan variabel yang akan kita kirim kedalam fungsi tersebut. Saya akan mengajarkan penggunaan function namafungsi() yang paling sederhana.
Penggunaan function()
Misalkan anda ingin membuat kode penjumlahan seperti ini:

";

$x=1+3;
$y=$x+5;
echo "$y
";

$x=1+3;
$y=$x+5;
echo "$y
";

$x=1+3;
$y=$x+5;
echo "$y
";

$x=1+3;
$y=$x+5;
echo "$y
";

$x=1+3;
$y=$x+5;
echo "$y
";
?>

Jika anda perhatikan kode diatas, maka anda dapat melihat bahwa kita melakukan fungsi penjumlahan yang sama berulang-ulang. Nah hal tersebut meruapkan pemborosan karena kita perlu menuliskan kembali fungsi penjumlahan tersebut berulang-ulang. Bagaimana jika penjumlahannya panjang? tentu merepotkan, untuk itu kita dapat menjadikannya fungsi. Pada kode diatas jika kita buatkan fungsi maka jadinya seperti ini:

Mudah kan, kode kita menjadi singkat. Jadi kita membuat fungsi dengan nama fungsinya tambah(). Nah didalam fungsi tambah() tersebut kita isikan fungsi penjumlahan kita. Kemudian jika kita ingin menjalankan fungsi penjumlahan tersebut maka kita cukup memanggil fungsi tambah() tersebut sebanyak yang kita mau.
Mengirim Variabel kedalam Fungsi

Kita dapat mengirimkan variabel kedalam fungsi tersebut. Sehingga nilai yang dihasilkan dalam fungsi dapat berbeda-beda karena kita dapat mengirimkan variabel yang berbeda-beda. Sekarang cobalah kode berikut ini:

";
}
tambah(10, 5);
tambah(20, 30);
?>

Jika kita perhatikan pada kode diatas, fungsi function tambah($x, $y) memiliki 2 variabel yaitu $x dan $y. Dan ketika kita memanggil fungsi tersebut dengan tambah(10, 5);. Maka otomatis variabel $x akan terisi dengan nilai 10 dan variabel $y akan terisi dengan nilai 5. Demikian pula ketika kita mengubah nilai variabelnya tambah(20, 30);. Dalam fungsi tidak terdapat batasan variabel kita bisa membuat variabel yang kita kirim sebanyak apapun.
Perlu diingat bahwa jumlah variabel pada fungsi harus sama ketika kita memanggil fungsinya dan itu urut dari kiri kekanan. Maka jika kita punya function tambah($x, $y) dan kita panggil dengan tambah(10, 5, 7); akan menghasilkan error karena function tambah($x, $y) hanya memiliki 2 variabel sedangkan kita memanggilnya dengan 3 variabel.

Seperti itulah kira-kira penggunaan fungsi pada PHP, pada kenyataannya tidak sesederhana itu, apabila anda telah membuat aplikasi yang rumit di PHP maka anda akan menemukan tantangannya. Tetapi dasarnya adalah seperti itu, jadi tidak terlalu sulit.

Pembangunan Aplikasi GUI Menggunakan PHP dan gambArt

Data statistik menunjukkan bahwasanya tidak kurang dari 40% aplikasi web dibangun dengan menggunakan bahasa pemrograman PHP. Hal tersebut memperlihatkan dominasi PHP pada dunia pengembangan aplikasi web. Pada kenyataannya, PHP adalah bahasa pemrograman yang sangat handal yang dapat melakukan banyak hal selain mengolah halaman-halaman web.

Mungkin masih banyak di antara kita yang belum mengetahui bahwasanya selain digunakan untuk membangun aplikasi web, PHP dapat pula digunakan untuk membangun aplikasi GUI (Graphical User Interface). Hal tersebut sangatlah wajar mengingat belum populernya penggunaan PHP untuk membangun aplikasi GUI. Pada artikel ini, kita akan membahas mengenai pembangunan aplikasi GUI dengan menggunakan gambArt yang merupakan produk dari proyek open source karya developer Indonesia.
PHP dan Aplikasi GUI

Saat ini kita dapat menemukan beberapa solusi yang dapat digunakan untuk membangun aplikasi GUI dengan menggunakan PHP. Solusi yang ada dan cukup banyak dikenal saat ini adalah: PHP-GTK, WinBinder, dan PHP-QT.

Sayangnya, walaupun solusi untuk pembangunan aplikasi GUI menggunakan PHP sudah tersedia, kita masih "belum" dapat menemukan aplikasi GUI komersial berskala enterprise yang dibangun dengan menggunakan PHP. Mengapa hal ini bisa terjadi? Beberapa penyebab yang mendasari minimnya penggunaan PHP dalam pembangunan aplikasi GUI adalah sebagai berikut.

* Belum mature-nya solusi yang ada. Hal ini menyebabkan developer enggan untuk menggunakan PHP untuk membangun aplikasi GUI komersial
* Perkembangan dari solusi-solusi tersebut masih kurang cepat
* Tingkat kesulitan pembangunan aplikasi GUI menggunakan PHP masih relatif tinggi
* Kemampuan yang dimiliki PHP untuk pembangunan aplikasi GUI masih jauh tertinggal jika dibandingkan dengan bahasa pemrograman lain yang sudah lebih dahulu digunakan untuk pembangunan aplikasi GUI, misalnya Java, C# dan C++
* Serta berbagai alasan lainnya

Untuk menjawab berbagai masalah tersebut di atas, saat ini tengah dikembangkan sebuah solusi baru untuk membantu pembangunan aplikasi GUI menggunakan PHP. Solusi baru tersebut adalah Klorofil Platform. Klorofil Platform dibangun oleh suatu komunitas yang bernama Klorofil Collaboration Project atau dikenal juga dengan nama Klorofil. Di dalam Klorofil Platform terdapat sebuah GUI framework yang bernama gambArt. GUI framework inilah yang dapat kita gunakan untuk membangun aplikasi GUI menggunakan PHP.

Sebelum kita membahas lebih lanjut mengenai Klorofil Platform, gambArt, dan lain sebagainya, kita akan melihat terlebih dahulu salah satu aplikasi yang dibangun menggunakan gambArt. Gambar kalkulator yang anda lihat adalah dibangun dengan menggunakan PHP dan gambArt.
Klorofil Collaboration Project - Proyek Open Source Indonesia

Klorofil Collaboration Project, yang juga dikenal sebagai Klorofil, adalah proyek open source yang dipelopori oleh Saltanera Teknologi. Walaupun Klorofil dipelopori oleh developer-developer dari Saltanera, proyek ini tetap mengharapkan adanya kontribusi dari komunitas open source (khususnya PHP) untuk dapat membantu mensukseskan Klorofil.

Tujuan didirikannya Klorofil adalah untuk menyediakan application development environment dan deployment environment berskala enterprise yang dapat membantu programmer PHP untuk membangun aplikasi dengan lebih mudah, lebih cepat dan lebih baik. Untuk dapat memenuhi tujuan tersebut, Klorofil merencanakan untuk membangun beberapa sub-project yang dapat menghasilkan software-software yang dapat membantu programmer PHP. Saat ini Klorofil hanya memiliki satu sub-proyek, yaitu proyek pembangunan Klorofil Platform. Platform tersebut di-publish dengan menggunakan salah satu lisensi open source yang telah disetujui oleh Open Source Initiative, yaitu Common Public License (CPL) versi 1.0. Pembangunan sub-proyek lainnya diharapkan akan menyusul kemudian.
Klorofil Platform

Klorofil Platform merupakan sebuah platform berbasis PHP yang tengah dikembangkan oleh Klorofil. Secara sederhana, tujuan dibangunnya Klorofil Platform adalah untuk menambahkan kemampuan PHP agar memiliki kemampuan yang "setara" dengan bahasa pemrograman berskala enterprise, misalnya Java.

Berikut ini beberapa fitur yang ada maupun yang akan dikembangkan pada Klorofil Platform:

* GUI framework untuk pembangunan aplikasi GUI. GUI framework ini dinamakan gambArt
* Web framework untuk pembangunan aplikasi web. Web framework tersebut dinamakan Semok
* Class library yang diharapkan dapat mempermudah dan mempercepat proses pembangunan aplikasi dengan PHP. Class-class yang disediakan diantaranya adalah collection, I/O, networking (SMS, e-mail, HTTP, socket), compression, byte compiler, XML, dan database
* Library untuk pembangunan aplikasi distributed computing dengan menggunakan PHP. Library tersebut dinamakan Televoke

Pada versi-versi selanjutnya akan ditambahkan berbagai fitur lain, diantaranya adalah 3D library serta GUI builder untuk gambArt. Fitur-fitur tersebut tentunya akan sangat membantu developer dalam membangun aplikasi, baik untuk web maupun desktop, dengan menggunakan PHP.

Beberapa keuntungan yang akan kita peroleh dengan menggunakan Klorofil Platform antara lain:

* Waktu yang dibutuhkan untuk menyelesaikan suatu proyek akan menjadi jauh lebih singkat dan memperoleh hasil dengan kualitas yang lebih baik
* Kita dapat menggunakan PHP tidak hanya untuk membangun aplikasi web melainkan juga untuk membangun aplikasi GUI
* Adanya standar dalam pembangunan suatu aplikasi PHP
* Mempermudah developer dengan disediakannya class-class yang sering digunakan sehingga developer tidak perlu lagi membuatnya ataupun mencarinya di internet
* Aplikasi dibangun di atas produk open source


gambArt - GUI Framework dari Klorofil Platform

Sebagaimana telah kita bahas sebelumnya, gambArt adalah sebuah GUI framework yang merupakan bagian dari Klorofil Platform. Dengan adanya gambArt, developer PHP dapat dengan mudah membuat sebuah aplikasi GUI yang bagus.

Salah satu fitur menarik dari gambArt adalah dukungan theme. Hal ini akan mempermudah developer untuk mengganti tampilan dari aplikasi yang dibuatnya.

Saat ini, sistem operasi yang telah di-support oleh Klorofil Platform adalah Windows dan Linux. Di masa akan datang, Klorofil Platform diharapkan sudah dapat berjalan di atas sistem operasi lainnya, misalnya MacOS dan OpenSolaris.

Gambar di samping memperlihatkan contoh lain dari aplikasi yang dibangun dengan menggunakan gambArt GUI framework.

Instalasi

Instalasi Klorofil Platform, baik pada Windows maupun Linux, sangatlah mudah. Installer Klorofil Platform dibuat agar dapat digunakan dengan semudah mungkin. Installer Klorofil Platform juga telah menyediakan PHP sehingga kita tidak perlu menginstall PHP terlebih dahulu. Berikut ini langkah yang perlu dilakukan untuk menginstall Klorofil Platform pada masing-masing sistem operasi.
Instalasi pada Sistem Operasi Windows

1. Pastikan bahwa kita telah memiliki installer terbaru dari Klorofil Platform versi Windows (klorofil-platform-x.x-installer.exe) yang dapat di-download di Klorofil Download Center
2. Jalankan file installer yang telah di-download. Secara default, Klorofil Platform akan di-install pada direktori Klorofil yang terdapat di dalam direktori Program Files.
3. Setelah instalasi selesai, kita dapat mengakses Klorofil Platform melalui Start Menu.
4. Untuk mengecek apakah instalasi telah sukses, kita dapat menjalankan contoh aplikasi Hello World yang disertakan pada installer. Apliksi Hello World tersebut dapat dijalankan dengan mengklik Start Menu > Klorofil > Samples > Hello World

Instalasi pada Sistem Operasi Linux

1. Pastikan bahwa kita telah memiliki installer terbaru dari Klorofil Platform versi Linux (klorofil-platform-x.x-installer.tar.bz2) yang dapat di-download di Klorofil Download Center
2. Lakukan dekompresi pada file installer.
$ tar -xjf klorofil-platform-x.x-installer.tar.bz2
3. Jalankan file installer yang telah di-dekompres dengan menggunakan user root.
$ cd klorofil-platform-x.x-installer
$ su
$ ./install
$ exit
4. Secara default, Klorofil Platform akan di-install pada direktori /usr/lib/klorofil.

Untuk mengecek apakah instalasi telah sukses, kita dapat mencoba menjalankan contoh aplikasi Hello World yang disertakan pada installer. Aplikasi Hello World tersebut dapat dijalankan dengan melakukan langkah berikut ini.

1. Pindah ke direktori dimana aplikasi Hello World berada.
$ cd /usr/lib/klorofil/samples/hello_world/
2. Jalankan aplikasi Hello World tersebut.
$ klorofil app.kfe


Membangun Aplikasi gambArt Pertama Kita - Hello World!

Sekarang, kita akan mulai mencoba membangun aplikasi Hello World dengan menggunakan gambArt. Untuk setiap aplikasi yang akan kita bangun menggunakan gambArt, kita perlu menyiapkan sebuah direktori khusus. Direktori tersebut akan digunakan untuk menampung semua file yang dibutuhkan oleh aplikasi yang akan dibangun, misalnya library, image, source code aplikasi, source code form dan lain sebagainya. Pada contoh ini, kita akan membuat direktori helloWorld untuk menampung semua file yang dibutuhkan oleh aplikasi.

Setelah itu kita akan membuat dua buah file, yaitu file aplikasi (app.kfe) dan file form (HelloForm.php). Sebagaimana telah dinyatakan sebelumnya, semua file yang digunakan oleh aplikasi harus diletakkan pada sebuah direktori khusus, dalam hal ini direktori helloWorld. Berikut ini struktur direktori dari aplikasi Hello World yang akan kita bangun. Struktur ini tidak baku. Kita dapat meletakkan file-file tersebut sesuka kita asalkan tetap berada di dalam direktori aplikasi (helloWorld).

Penggunaan kedua nama file tidaklah mutlak. Anda dapat mengganti nama app.kfe dengan nama lain, misalnya HelloApp.kfe asalkan ekstensi yang digunakan adalah KFE (Klorofil Executable). Demikian pula halnya dengan nama file form yang digunakan. Anda bisa menggunakan nama lain selain HelloForm.php. Tentunya, source code form juga disesuaikan dengan nama baru tersebut.

Gambar di samping memperlihatkan struktur file dan direktori dari aplikasi Hello World yang akan kita bangun.

Berikut ini source code (beserta komentar) dari file HelloForm.php dan app.kfe.

/*********************
* HelloForm.php *
*********************/

/**
* File berikut ini akan mengatur form yang ada pada aplikasi
* Hello World kita. Pengaturan yang dilakukan diantaranya adalah:
* ukuran form, posisi, dan title.
*/

// Sebuah form harus mengimport klorofil_gambart_Form terlebih dahulu
import("klorofil_gambart_Form");

// Deklarasi class HelloForm. Sebuah form harus diturunkan dari
// klorofil_gambart_Form
class form_HelloForm extends klorofil_gambart_Form
{

// Deskripsikan seluruh code yang dibutuhkan untuk men-generate form
// pada fungsi init(). Di masa akan datang, fungsi init() akan
// diisi secara otomatis oleh software Form Editor yang akan disediakan
// oleh Klorofil Collaboration Project
function init()
{
/*-------------------------------------------------------------------
* Inisialisasi Form
*-------------------------------------------------------------------*/

// Fungsi init() harus diawali dengan memanggil parent::init()
// Hal ini dilakukan untuk memanggil fungsi init() pada parent dari
// class form_ConverterForm, yaitu klorofil_gambart_Form
parent::init();

// Tentukan ukuran form beserta posisinya
$this->setWidth(200);
$this->setHeight(200);
$this->setLeft(100);
$this->setTop(100);

// Tentukan judul/title dari form tersebut
$this->setCaption("Hello World !!!");
}
}
?>

/*********************
* app.kfe *
*********************/

/**
* File ini digunakan untuk menjalankan aplikasi, mengenerate form yang
* telah dibuat, dan melakukan berbagai setting lainnya.
*/

// Pertama-tama, kita diharuskan untuk mengimport class
// klorofil_gambart_Application terlebih dahulu.
// klorofil_gambart_Application menunjukkan lokasi file
// Application.php adalah:
// klorofil/gambart/Application.php. Lokasi tersebut relatif terhadap
// direktori KLOROFIL_INSTALLATION_DIR/klorofil/classes/
// Jadi, file Application.php terletak di direktori:
// KLOROFIL_INSTALLATION_DIR/klorofil/classes/klorofil/gambart/
import("klorofil_gambart_Application");

// Import form form_HelloForm yang akan digunakan oleh aplikasi ini
// (Hello World).
// form_HelloForm menunjukkan lokasi file HelloForm.php adalah:
// form/HelloForm.php. Lokasi tersebut relatif terhadap
// direktori HELLOWORLD_APPLICATION_DIR/klorofil/classes/
// Jadi, lokasi HelloForm.php secara lengkap adalah:
// HELLOWORLD_APPLICATION_DIR/klorofil/classes/form/HelloForm.php
import("form_HelloForm");

// Setelah meng-import klorofil_gambart_Application dan form (dalam hal ini
// form_HelloForm), maka kita akan secara otomatis mendapatkan 2 buah
// variabel global, yaitu $application dan $form
global $application;
global $form;

// Tentukan judul/title yang ingin dimunculkan pada taskbar
// saat aplikasi ini dijalankan. Judul tersebut di-set dengan menggunakan
// method setTitle yang dimiliki oleh $application yang telah kita dapatkan
// sebelumnya
$application->setTitle("Hello World!");

// Generate form dari aplikasi ini dengan menggunakan method createForm
// yang dimiliki oleh $application
$form = $application->createForm("form_HelloForm");

// Jalankan aplikasi dengan memanggil method run dari $application
$application->run();
?>

Contoh Aplikasi yang Memiliki Event

Setelah mencoba membangun aplikasi Hello World yang sangat sederhana, kali ini kita akan mencoba membangun suatu aplikasi yang memiliki interaksi. Aplikasi yang akan kita bangun adalah aplikasi konversi ukuran dari satuan feet menjadi satuan meter.

Aplikasi ini menerima input melalui text box. Setelah user memasukkan angka yang ingin dikonversi ke dalam text box tersebut, user tinggal menekan tombol Enter atau mengklik tombol Hitung. Setelah itu, aplikasi akan menampilkan hasil konversi.

Berikut ini source code (beserta komentar) dari ConverterForm.php dan app.kfe.
/*************************
* ConverterForm.php *
*************************/

/**
* File berikut ini akan mengatur form beserta komponen (button, edit box)
* yang ada. Pengaturan yang dilakukan diantaranya adalah: ukuran form,
* posisi, dan title.
*/

// Sebuah form harus mengimport klorofil_gambart_Form terlebih dahulu
import("klorofil_gambart_Form");

// Kita akan mengimport komponen-komponen yang akan digunakan.
// Pada contoh ini, komponen yang akan kita gunakan adalah:
// text edit, button, dan label
import("klorofil_gambart_component_Edit");
import("klorofil_gambart_component_Button");
import("klorofil_gambart_component_Label");

// Deklarasi class ConverterForm. Sebuah form harus diturunkan dari
// klorofil_gambart_Form
class form_ConverterForm extends klorofil_gambart_Form
{

// Deskripsikan seluruh code yang dibutuhkan untuk men-generate form
// pada fungsi init(). Di masa akan datang, fungsi init() akan
// diisi secara otomatis oleh software Form Editor yang akan
// disediakan oleh Klorofil Collaboration Project
function init()
{

/*----------------------------------------------------------------
* Inisialisasi Form
*----------------------------------------------------------------*/

// Fungsi init() harus diawali dengan memanggil parent::init()
// Hal ini dilakukan untuk memanggil fungsi init() pada parent dari
// class form_ConverterForm, yaitu klorofil_gambart_Form
parent::init();

// Tentukan ukuran form beserta posisinya
$this->setWidth(250);
$this->setHeight(100);
$this->setLeft(100);
$this->setTop(100);

// Tentukan judul/title dari form tersebut
$this->setCaption("Konversi Feet ke Meter");

/*----------------------------------------------------------------
* Komponen Label untuk menampilkan tulisan 'Feet = '
*----------------------------------------------------------------*/

// Siapkan komponen Label labelFeet dan tambahkan pada class
// form ini. Argumen $this pada statement ini menyatakan bahwa
// Label tersebut ditambahkan/dimiliki oleh
// $this (class form_ConverterForm)
$this->labelFeet = new klorofil_gambart_component_Label($this);

// Tentukan posisi dari Label tersebut.
// Secara default, Label bersifat auto size (ukurannya sesuai
// dengan panjang label) dan transparan (tidak memiliki warna
// background)
$this->labelFeet->setLeft(10);
$this->labelFeet->setTop(13);

// Tentukan text dari komponen Label tersebut
$this->labelFeet->setCaption("Feet = ");

/*----------------------------------------------------------------
* Komponen Button untuk menampilkan tombol dengan text 'Hitung'
*----------------------------------------------------------------*/

// Siapkan komponen Button buttonHitung dan tambahkan pada class
// form ini (form_ConverterForm).
$this->buttonHitung = new klorofil_gambart_component_Button($this);

// Tentukan ukuran dan posisi dari tombol Hitung
$this->buttonHitung->setLeft(150);
$this->buttonHitung->setTop(7);
$this->buttonHitung->setWidth(80);
$this->buttonHitung->setHeight(24);

// Tentukan text yang akan dituliskan pada tombol tersebut
$this->buttonHitung->setCaption("Hitung");

// Tentukan fungsi yang akan dipanggil ketika tombol Hitung diklik.
// Dalam contoh ini, setiap kali tombol Hitung diklik, gambArt akan
// secara otomatis mengeksekusi/menjalankan fungsi
// onConvertPerformedClick
$this->buttonHitung->onClick->setHandler(
$this, "onConvertPerformedClick");
/*----------------------------------------------------------------
* Komponen text edit untuk menerima input angka yang ingin
* dikonversi
*----------------------------------------------------------------*/

// Siapkan komponen Edit inputFeet dan tambahkan pada class
// form ini (form_ConverterForm).
$this->inputFeet = new klorofil_gambart_component_Edit($this);

// Tentukan ukuran dan posisi dari text edit tersebut
$this->inputFeet->setLeft(45);
$this->inputFeet->setTop(10);
$this->inputFeet->setWidth(100);
$this->inputFeet->setHeight(20);

// Tentukan fungsi yang akan dipanggil ketika pada saat user
// menekan tombol pada saat berada di text edit. Dalam contoh ini,
// setiap kali user menekan tombol apapun pada text edit, gambArt
// akan secara otomatis mengeksekusi/menjalankan fungsi
// onEditKeyPress
$this->inputFeet->onKeyDown->setHandler(
$this, "onEditKeyPress");

/*----------------------------------------------------------------
* Komponen Label untuk menampilkan tulisan hasil konversi
*----------------------------------------------------------------*/

// Siapkan komponen Label labelMeter dan tambahkan pada class
// form ini (form_ConverterForm).
$this->labelMeter = new klorofil_gambart_component_Label($this);

// Tentukan posisi dari Label tersebut.
// Secara default, Label bersifat auto size (ukurannya sesuai
// dengan panjang label) dan transparan (tidak memiliki warna
// background)
$this->labelMeter->setLeft(10);
$this->labelMeter->setTop(35);
}

/*----------------------------------------------------------------
* Fungsi yang akan dipanggil saat tombol Hitung diklik
*----------------------------------------------------------------*/

function onConvertPerformedClick($sender)
{
// Masukkan nilai yang dimasukkan user pada input text ke dalam
// variabel $lengthFeet
$lengthFeet = $this->inputFeet->getText();

// Lakukan konversi
$lengthMeter = $lengthFeet * 0.3;

// Tampilkan hasil konversi
$this->labelMeter->setCaption(
$lengthFeet . " Feet = " . $lengthMeter . " Meter");
}

/*-----------------------------------------------------------------
* Fungsi yang akan dipanggil saat tombol apapun diklik saat
* fokus berada pada text edit inputFeet.
*-----------------------------------------------------------------*/

function onEditKeyPress($sender, $key, $shift)
{
// Kita akan mengecek apakah tombol yang ditekan oleh user merupakan
// tombol Enter. 13 adalah merupakan tombol Enter.
if ($key == 13)
{
// Jalankan fungsi onConvertPerformedClick untuk menjalankan
// perhitungan
$this->onConvertPerformedClick($sender);
}
}
}
?>
/*********************
* app.kfe *
*********************/

/**
* File ini digunakan untuk menjalankan aplikasi, mengenerate form yang
* telah dibuat, dan melakukan berbagai setting lainnya.
*/

// Pertama-tama, kita harus mengimport klorofil_gambart_Application
// terlebih dahulu
import("klorofil_gambart_Application");

// Import form form_ConverterForm yang akan digunakan oleh aplikasi ini
import("form_ConverterForm");

// Setelah melakukan kedua import di atas, kita akan mendapatkan
// 2 variabel global, yaitu: $application dan $form.
global $application;
global $form;

// Tentukan judul/title aplikasi yang akan ditampilkan pada taskbar.
$application->setTitle("Feet Converter");

// Generate form
$form = $application->createForm("form_ConverterForm");

// Jalankan aplikasi
$application->run();
?>
Kesimpulan

Dari artikel ini, kita dapat melihat bahwasanya kita telah dapat menggunakan PHP untuk membangun aplikasi GUI dengan menggunakan GUI framework dari Klorofil Platform yang bernama gambArt. Saat ini, gambArt juga sudah menyediakan berbagai komponen dasar yang cukup lengkap.

Pada versi-versi berikutnya, Klorofil akan terus berusaha untuk menambahkan komponen-komponen lainnya. Selain itu, pembangunan GUI builder akan menjadi salah satu prioritas utama. Dengan adanya GUI builder, pembangunan aplikasi dengan gambArt akan menjadi jauh lebih mudah.

Tentunya, artikel ini hanyalah berisi gambaran umum dari Klorofil Platform dan gambArt. Informasi lebih lanjut mengenai Klorofil Platform dapat dilihat di website Klorofil dan dokumentasi yang tersedia secara online.

Jika Anda menginginkan informasi dan tutorial mengenai Klorofil Platform dalam bahasa Indonesia, Anda dapat mengunjungi Saltanera DevSpace. Saltanera DevSpace merupakan website yang disediakan bagi komunitas developer.
Langkah Selanjutnya ...

1. Dapatkan informasi lebih lanjut dengan mengunjungi website Klorofil
2. Download Klorofil Platform beserta contoh aplikasi di Klorofil Download Center
3. Kunjungi Klorofil Online Documentation untuk mengetahui lebih jauh mengenai Klorofil Platform dan cara pemakaiannya
4. Mendaftarlah pada atau Klorofil Feed untuk mendapatkan notifikasi release baru maupun update website Klorofil
5. Bergabung dengan Klorofil Forum untuk mengajukan/menjawab pertanyaan-pertanyaan seputar gambArt
6. Cobalah untuk membangun aplikasi sederhana dengan menggunakan gambArt
7. Kirimkanlah deskripsi dari aplikasi yang telah dibuat agar dapat ditampilkan pada website Klorofil