Menciptakan Fungsi Pengertian Fungsi Fungsi adalah blok kode yang ditujukan untuk melaksanakan suatu tugas tertentu. Dengan membuat fungsi sekali dapat dipanggil berkali kali Mendeklarasikan Fungsi Function nama_fungsi (parameter) { blok kode } Pemanggilan fungsi Nama_fungsi(parameter) Contoh script <? Function tulistbl($teks) { echo "<B> $teks</B>"; } tulistbl("aku adalah lelaki"); ?> Fungsi yang tidak ada parameter <? Function tulistbl($teks) { echo "<B> $teks</B>"; } Function garis() { echo "<hr><br>"; } garis(); tulistbl("Balai Latihan Pengembangan Teknik-Jawa Timur"); garis(); tulistbl("BLPT"); ?> Nilai Balik Suatu fungsi dapat memberikan nilai balik dari pemrosesan data oleh fungsi. Pendeklarasian Function nama_function(parameter) { return(variabel) } Contoh script <? Function diskon($harga) { $diskonnya=$harga/1000; return($diskonnya); } echo diskon(10000); ?> Lingkup Variabel <? Function ganti() { Lokal terhadap fungsi } $bunga="Melati"; echo "$bunga"; ?> Lingkup Variabel <? Function ganti() { $bunga="Mawar"; } $bunga="Melati"; ganti(); echo "$bunga"; ?> Pembuatan variabel global Pendeklarasian global variabel Function nama_function { $GLOBAL nama_parameter } Atau Function nama_function { global nama_parameter } Contoh variabel global <? Function ganti() { global $bunga; $bunga="Melati"; } $bunga="Mawar"; ganti(); echo $bunga; ?> Contoh variabel global <? Function ganti() { $GLOBALS[“bunga”]="Melati"; } $bunga="Mawar"; ganti(); echo $bunga; ?> Variabel static • Variabel hanya dapat diakses oleh fungsi yang mendeklarasikannya • Variabel tidak hilang • Inisialisasi dilakukan sekali Contoh variabel static <? Function hitung() { static $pencacah =0; return ++$pencacah; } echo hitung()."<BR>"; echo hitung()."<BR>"; echo hitung()."<BR>"; ?> Fungsi yang bersifat rekursif Factorial(3) 6 3*Factorial(2) Hasil 6 2 2*Factorial(1) 1 1*Factorial(1) 1 Factorial(0) Contoh variabel rekursif <? Function factorial($m) { if($m==0) return 1; else return $m* factorial($m-1); } echo "3! adalah ".factorial(3); echo "<BR>4! adalah ".factorial(4); ?> Pemanggilan fungsi secara dinamis <? Function tulis_miring($teks) { echo "<I>$teks</I>"; } Function tulis_tebal($teks) { echo "<B>$teks</B>"; } $var_fungsi="tulis_tebal"; $var_fungsi("Pemrograman"); echo "<BR>"; $var_fungsi="tulis_miring"; $var_fungsi("Pemrograman"); $var_fungsi("budi"); ?> Argumen yang berjumlah tidak pasti • Func_num_args : menghasilkan jumlah argumen • Func_get_arg : memperoleh argumen tertentu dengan menyebutkan posisi argumen (dimulai dengan nol) • Func_get_args : menghasilkan array yang berisi seluruh argumen Contoh argumen tidak pasti <? Function test() { $jum_arg= func_num_args(); if($jum_arg==0) return 0; for ($i=0;$i<$jum_arg;$i++) echo "Nilai ke-$i:".func_get_arg($i)."<BR>"; } test(12,18,19); ?> Contoh argumen tidak pasti dengan func_get_args() <? Function test() { $argumen=func_get_args(); foreach($argumen as $kunci => $nilai) echo "Nilai ke-$kunci:$nilai<BR>"; } test(12,18,19); ?> Latihan Buat fungsi Header Buat fungsi left menu Buat fungsi botom menu Panggil fungsi2 diatas dalam halaman web anda Header Left menu Botom menu Tugas • Buatlah fungsi untuk mencari pohon faktor dari nilai yang diinputkan ? • Buatlah fungsi untuk menghitung apakah bilangan yang diinputkan termasuk bilangan prima atau bukan ?