Anda di halaman 1dari 16

BAB II

PEMROGRAMAN WEB: PHP (2)

2.1 TUJUAN PRAKTIKUM


1. Memahami tentang Array di PHP.
2. Memahami penggunaan Fungsi dalam PHP.
3. Memahami tentang String dan Date.
4. Memahami tentang Modularisasi dalam PHP.

2.2 DASAR TEORI


2.2.1 Array
Array merupakan variable yang berisi lebih dari 1 variabel, atau dapat
dikatakan sebagai variabel jamak.
Sebagai analogi, ketika kita mempunyai banyak nama buah (kita anggap
ini sebagai variabel), maka daripada kita menyatakan tiap nama buah
dengan variabel $buah1, $buah2, $buah3, ... dst. Maka akan lebih baik
dan efisien jika kita menggunakan variabel $buah yang berupa array.
Variabel array pada PHP, kadang tidak perlu kita definisikan. Namun
untuk indeks array, kita menggunakan indeks mulai dari 0 hingga
sejumlah elemen array dikurang 1.
Assignment Array
Ada beberapa cara untuk memberi nilai pada suatu variabel array, antara
lain:
Contoh 1:
$buah[0] = “nanas”;
$buah[1] = “mangga”;
$buah[2] = “jambu”;

II-1
II-2

Contoh 2:
$buah[] = “nanas”;
$buah[] = “mangga”;
$buah[] = “jambu”;
Pada contoh ini, PHP secara otomatis akan memberi indeks sesuai nilai
indeks teraakhir dari array. Maka pada variabel $buah indeks 0 berisi
“nanas”, indeks 1 berisi “mangga” dan indeks 2 akan berisi “jambu”.
Contoh 3:
$buah = array(“nanas”, “mangga”, “jambu”);
Pada contoh ini, suatu array dideklarasikan dengan memberi nilai secara
langsung. Hasilnya akan sama dengan contoh-contoh sebelumnya.
Array Asosiatif
Array asosiatif tidak menggunakan integer sebagai indeks, namun
menggunakan string sebagai indeks.
Contoh 1:
$hobi[“nanang”] = “renang”;
$hobi[“eko”] = “merokok”;
Contoh 2:
$hobi = array(“nanang” => “renang”, “eko”=> “merokok”);

2.2.2 Fungsi
Fungsi terbagi menjadi 3:
1. Built-in
2. User Defined Function (UDF)
3. External
Fungsi built-in
Fungsi yang sudah disediakan oleh PHP dan pemrograman dapat
langsung memakainya. Contoh:
Fungsi Matematika: sin, cos, tan, asin, deg2grad, dll.
Fungsi Tanggal dan Waktu: date, checkdate.
II-3

Fungsi String: strlen, strpos, strtolower, strtoupper, substr, dll.


Fungsi UDF
Fungsi yang dibuat sendiri oleh pemrogram. Dapat diletakkan di mana
saja dalam script PHP, tapi sebaiknya diletakkan paling atas agar
memudahkan dalam proses debugging.
Deklarasi UDF
function namafungsi([parameter]){
Statement;
Statement;
...
}
Pemanggilan UDF
Sintaks:
$varhasil = &namafungsi([parameter]);
Penggunaan tanda & tidak mutlat, karena PHP secara otomatis akan
menganggap sebagai fungsi karena tidak didahului dengan tanda $.
Fungsi External (Tidak dibahas dalam bab ini)
Dalam fungsi yang belum diaktifkan dalam keseluruhan modul PHP,
untuk mengaktifkannya secara otomatis degan meregistrasikan pada file
PHP.INI.

2.2.3 Modularisasi
Modularisasi dalam pemrograman umum dilakukan dan sangat
diperlukan untuk mempermudah debugging dan pengembangan program.
Modularisasi berarti melakukan pembuatan program berdasarkan modul-
modul. Setiap modul dikembangkan untuk tujuan atau fungsi khusus.
Modul dibuat secara general (umum). Modul dapat berupa fungsi atau
prosedur.
Require
II-4

Statement Require digunakan untuk membaca nilai variabel dan fungsi-


fungsi dari sebuah file lain.
Cara penulisan statement Require adalah.
require(namafile);
Teknik ini cocok untuk membuat template (pola) yang memudahkan
proses pengembangan aplikasi dengan menggunakan pola tampilan. Misal
dalam membuat desain web yang dilakukan dengan kerja tim, pola dan
gambar-gambar yang dibutuhkan dapat dibuat dengan teknik ini.
Statement Require ini tidak dapat dimasukkan di dalam suatu struktur
looping misalnya while atau for. Karena hanya memperbolehkan
pemanggilan file yang sama tersebut hanya sekali saja.
Include
Statement Include akan menyertakan isi suatu file tertentu. Include dapat
diletakkan di dalam suatu looping misalkan dalam statement for atau
while. Syntax penulisan:
include(namafile);

2.3 STUDI KASUS


Latihan 1
1. Menampilkan Array dengan menunjuk nomor indeksnya.

Screenshot

Syntax
<?php
$anak[0] = "Faruq"; //Memasukkan nilai ke array anak
urutan 0
$anak[1] = "Alya"; //Memasukkan nilai ke array anak
urutan 1
$anak[2] = "Zahro"; //Memasukkan nilai ke array anak
urutan 2
II-5

echo "Isi array 0 adalah $anak[0]"; //Memanggil nilai


array anak urutan 0
echo "<br>";
echo "Isi array 1 adalah $anak[1]"; //Memanggil nilai
array anak urutan 1
echo "<br>";
echo "Isi array 2 adalah $anak[2]"; //Memanggil nilai
array anak urutan 2
echo "<br>";
?>
Analisis
Kode untuk menampilkan isi array. Pertama-tama deklarasikan terlebih
dahulu isi dari array berikut urutannya dengan menambahkan kurung
siku setelah deklarasi variabel. Selanjutnya tinggal menampilkan
hasilnya dengan perintah echo.

2. Pemakaian Fungsi Built-in: Matematika.

Screenshot

Syntax
<?php
$a = pow(2,10); //Fungsi perpangkatan
$b = sqrt(100); //Fungsi akar
$c = ceil(4.25); //Pembulatan keatas
$d = floor(4.25); //Pembulatan kebawah
echo "2 pangkat 10 = $a <br>"; //Menampilkan nilai $a
echo "akar 100 = $b <br>"; //Menampilkan nilai $b
echo "ceil(4.25) = $c <br>"; //Menampilkan nilai $c
echo "floor(4.25) = $d <br>"; //Menampilkan nilai $d
?>
Analisis
Kode untuk menampilkan nilai dari hasil operasi aritmatika sederhana.
Pertama $a yaitu perpangkatan, $b dengan akar, $c dengan pembulatan
ke atas, $d dengan pembulatan ke bawah, lalu sisanya menampilkannya
dengan echo.
II-6

3. Pemakaian Fungsi Built-in: String.

Screenshot

Syntax
<?php
$str = "Belajar PHP ternyata Menyenangkan";
//Memasukkan nilai ke var $str
echo strtolower($str); //Ubah huruf ke kecil semua
echo "<br>";
echo strtoupper($str); //Ubah huruf ke besar semua
echo "<br>";
echo str_replace("Menyenangkan","mudah lho",$str);
//Mengganti string
?>
Analisis
Kode ini bertujuan untuk manipulasi string. Pertama buat variabel $str
dengan isi string. Lalu panggil isi variabel tersebut, tapi dengan perintah
tambahan yaitu strtolower agar huruf menjadi kecil semua. Yang kedua
tambahkan strtoupper agar semua menjadi kapital. Lalu yang terakhir
mengganti string tertentu degnan str_replace.

4. Pemakaian Fungsi UDF: Dengan Nilai Balik.

Screenshot

Syntax
<?php
function psgpjg ($pjg, $lbr) { //Membuat fungsi psgpjg
dengan parameter $pjg dan $lbr
$luas = $pjg * $lbr; //Mendefinisikan nilai $luas
dengan hasil dari $pjg * $lbr
return $luas; //Mengembalikan nilai luas
}
$bil1 = 5; //Mendefinisikan nilai $bil1
$bil2 = 3; //Mendefinisikan nilai $bil2
echo "Luas persegi panjang dengan panjang 5 dan lebar
3 = "; //Menampilkan echo
II-7

$luas=psgpjg($bil1,$bil2); //Mengisi var $luas dengan


function psgpjg
echo "hasil : $luas <br>"; //Menampilkan hasil dari
var $luas
?>
Analisis
Kode ini berisi fungsi yang bisa dipanggil. Fungsi yang didefinisikan
adalah psgpjg dengan parameter $pjg dan $lbr. Dalam fungsi tersebut
deklarasikan variabel $luas dengan isi nilai $pjg dikali nilai $lbr. Lalu
kembalikan nilai luas. Lalu di luar fungsi buat 2 variabel, isi dengan
angka. Buat juga variabel luas yang diisi dengan fungsi psgpjg, dengan
memasukkan nilai parameternya dengan mengambil variabel $bil1 dan
$bil2. Maka fungsi akan berjalan dan tampilkan hasilnya dengan echo.

5. Modularisasi menggunakan Include.


a. Contoh_include.php

Screenshot

Syntax
<?php
echo "========================<br>"; //Menampilkan
karakter
echo "Homepage Pribadi<br>"; //Menampilkan tulisan
echo "========================<br>"; //Menampilkan
karakter
?>
Analisis
Fungsi contoh untuk dipanggil di kode lain dan hanya berisi echo.

b. Buat file untuk memanggil file php di atas

Screenshot
II-8

Syntax
<?php
include("contoh_include.php"); //Memanggil file
contoh_include.php
echo "<br>";
echo "Ini di luar dari include"; //Menampilkan
sesuatu di luar include
?>
Analisis
Kode ini pertama-tama memanggil file lain dengan perintah include.
Maka akan tampil isi dari file lain tersebut. Setelah itu program
membuat echo selain dari pemanggilan tadi.

2.4 HASIL DAN PEMBAHASAN


Latihan 2
1. Buat program untuk mencari nilai max dan rata-rata dari 3 buah nilai,
gunakan fungsi dengan 3 nilai tersebut dikirimkan dalam bentuk array
sebagai parameter ke fungsi. Berikan juga return value ke program utama.

Screenshot

Syntax (nilaimaks.php)
II-9

<!DOCTYPE html>
<head></head>
<body>
<h4>Input Data</h4>
<form method="post" action="nilaimaks.php">
Nilai 1: <input type="number"
name="nilai1"><br>
Nilai 2: <input type="number"
name="nilai2"><br>
Nilai 3: <input type="number"
name="nilai3"><br>
<input type="submit">
</form>
<h4>Output Data</h4>
<?php include("nilaimaksproses.php") ?>
</body>
</html>
Syntax (nilaimaksproses.php)
<?php
if(isset($_POST['nilai1'])){ //Akan dieksekusi ketika
nilai1 sudah ada
//Masukkan semua input ke array $nilai
$nilai = array($_POST['nilai1'], $_POST['nilai2'],
$_POST['nilai3']);
//Fungsi mencari nilai terbesar dengan 3 parameter
function nilaimax($nilai1, $nilai2, $nilai3){
$max = max($nilai1, $nilai2, $nilai3);
//Menyimpan nilai terbesar
return $max; //Mengembalikan nilai variabel
$max
}
//Fungsi mencari nilai rata-rata dengan 3
parameter
function ratarata($nilai1, $nilai2, $nilai3){
$data = array($nilai1, $nilai2, $nilai3);
//Menyimpan data ke array
//Mencari nilai rata-rata dengan menjumlahkan
semua isi array
//dan membaginya dengan jumlah data array
$ratarata = array_sum($data) / count($data);
return $ratarata; //Mengembalikan nilai
variabel $ratarata
}
//Simpan semua fungsi untuk dipanggil nanti
$nilaimax = nilaimax($nilai[0], $nilai[1],
$nilai[2]);
$nilairata = ratarata($nilai[0], $nilai[1],
$nilai[2]);
echo "Nilai 1: $nilai[0]<br>"; //Tampilkan isi
array 0
echo "Nilai 2: $nilai[1]<br>"; //Tampilkan isi
II-10

array 1
echo "Nilai 3: $nilai[2]<br>"; //Tampilkan isi
array 2
echo "Nilai maksimum: $nilaimax<br>"; //Tampilkan
fungsi nilai terbesar
echo "Nilai rata-rata: $nilairata<br>";
//Tampilkan fungsi rata-rata
}
?>
Analisis
Program yang pertama harus diakses adalah nilaimaks.php. Di file ini,
user diminta untuk memberikan 3 buah input berupa angka untuk
nantinya diurutkan. Setelah submit, maka program akan memanggil file
lain yaitu nilaimaksproses.php dengan metode include.
Program akan menjalankan nilaimaksproses.php di bawah. Isi dari file
tersebut hanya akan dijalankan ketika nilai1 sudah memiliki value.
Proses pertama yang dijalankan adalah memasukkan semua input user
ke dalam array $nilai dengan mengambil nilai postnya. Lalu
mendeklarasikan fungsi pertama yaitu nilaimax untuk mencari nilai
terbesar dengan 3 parameter. Lalu menyimpan nilai terbesar dari 3
parameter tersebut dalam variabel $max dan mengembalikan nilainya.
Fungsi kedua yaitu ratarata dengan 3 parameter. Semua parameter
dimasukkan ke array $data terlebih dahulu. Lalu mendeklarasikan
variabel $ratarata dengan nilai sum dari ketiga parameter dibagi count
dari ketiga parameter. Lalu terakhir mengembalikan nilainya. Setelah
itu semua fungsi disimpan dalam variabel untuk dipanggil nantinya.
Terakhir panggil semua nilai yang dibutuhkan.

2. Buat program kalkulator sederhana, gunakan fungsi dengan parameter


yang dikirim ke fungsi berupa: 2 buah bilangan yang akan diproses (dalam
bentuk array), operator bilangan. Berikan juga header dan footer yang
dipanggil dengan perintah include.
II-11

Screenshot

Syntax (header.php)
<?php
echo "===================================<br>";
echo "------------Kalkulator-------------<br>";
echo "===================================<br>";
?>
Syntax (footer.php)
<?php
echo "=======Gilang Saeful Anwar=========";
?>
Syntax (funckalku.php)
<!DOCTYPE html>
<head>
<?php include("header.php"); ?>
</head>
<body>
<form method="post" action="funckalku.php">
Bilangan 1: <input type="number"
name="bil1"><br>
Bilangan 2: <input type="number"
name="bil2"><br>
Operasi: <select name="operasi">
<option value="ditambah">+</option>
<option value="dikurangi">-</option>
<option value="dikali">*</option>
<option value="dibagi">/</option>
</select><br>
<input type="submit">
</form>
<?php include("funckalkuproses.php"); ?>
</body>
<footer>
<?php include("footer.php"); ?>
</footer>
</html>
II-12

Syntax (funckalkuproses.php)
<?php
if(isset($_POST['bil1'])){ //Akan dijalankan ketika
bil1 sudah bernilai
//Buat array dari input user
$bilangan = array($_POST['bil1'], $_POST['bil2']);
$operasi = $_POST['operasi']; //ambil input
operasi
//Buat fungsi aritmatika, dengan 3 parameter
function aritmatika($bil1, $bil2, $op){
if($op == "ditambah"){ //Jika value op =
ditambah
$hasil = $bil1 + $bil2; //Hasil =
penjumlahan bil1 dan bil2
} else if($op == "dikurangi"){ //Jika value op
= dikurangi
$hasil = $bil1 - $bil2; //Hasil =
pengurangan bil1 dan bil2
} else if($op == "dikali"){ //Jika value op =
dikali
$hasil = $bil1 * $bil2; //Hasil =
perkalian bil1 dan bil2
} else if($op == "dibagi"){ //Jika value op =
dibagi
$hasil = $bil1 / $bil2; //Hasil =
pembagian bil1 dan bil2
} else{ //Jika value op = kosong
echo "Tolong pilih operasi!"; //Tampilkan
teks
}
return $hasil; //Kembalikan nilai hasil
}
//Masukkan fungsi ke variabel untuk dipanggil
nanti
$hasilnya = aritmatika($bilangan[0], $bilangan[1],
$operasi);
echo "Bilangan 1: $bilangan[0]<br>"; //Tampilkan
bilangan indeks 1
echo "Bilangan 2: $bilangan[1]<br>"; //Tampilkan
bilangan indeks 2
//Terakhir, tampilkan hasilnya
echo "Hasilnya, $bilangan[0] $operasi $bilangan[1]
= $hasilnya";
}
?>
Analisis
File header dan footer hanya berupa echo. Lalu untuk funckalku.php,
pertama-tama di bagian head memanggil file header.php dengan metode
II-13

include. Selanjutnya di bagian body, membuat form yang harus diisi


user berupa 2 input angka dan 1 input pilihan operasi yang diinginkan
dan 1 button. Setelah itu memanggil file funckalkuproses.php dengan
metode include. Di footer, memanggil file footer.php dengan include.
Selanjutnya di funckalkuproses.php, pertama-tama mendeklarasikan if
agar jika form bil1 belum terisi maka tidak akan dieksekusi dulu.
Selanjutnya, masukkan input user yang berupa angka ke array, dan
input operasi ke variabel lain. Setelah itu buat fungsi dengan nama
aritmatika dengan 3 parameter, yaitu untuk menyimpan 2 bilangan dan
1 operasi. Lalu buat fungsi percabangan di dalamnya untuk menghitung
nilai, if pertama jika nilai op bernilai ditambah maka operasinya
penjumlahan, kedua jika nilai op dikurangi maka operasinya
pengurangan, ketiga jika nilai op bernilai dikali maka operasinya
perkalian, keempat jika nilai op dibagi maka operasinya pembagian, lalu
jika op tidak memiliki nilai maka tampilkan “Tolong pilih operasi!”.
Terakhir kembalikan nilai hasil yang telah diisi dari percabangan if tadi.
Selanjutnya masukkan fungsi aritmatika tadi ke dalam variabel, disini
variabelnya $hasilnya, dengan mengisi parameter $bil1 dan $bil2
dengan array bilangan, dan $op dengan variabel $operasi. Selanjutnya
tampilkan semua yang akan ditampilkan.

Latihan 3
1. Buatlah program dengan menggunakan array untuk menghitung
penjumlahan antara 2 matriks dimensi 2x2.

Screenshot
II-14

Syntax
<?php
$matriks1 = array(); //Deklarasikan wadah Matriks1
$matriks2 = array(); //Deklarasikan wadah Matriks2
$matriks = array(); //Deklarasikan wadah Matriks untuk
hasil

//Isi matriks per baris.kolom


$matriks1[0][0] = 1;
$matriks1[0][1] = 2;
$matriks1[1][0] = 3;
$matriks1[1][1] = 4;
$matriks2[0][0] = 5;
$matriks2[0][1] = 6;
$matriks2[1][0] = 7;
$matriks2[1][1] = 8;

echo "Matriks 1<br>"; //Menampilkan judul untuk


Matriks 1
foreach(range(0, 1) as $baris){ //fungsi foreach untuk
baris
foreach(range(0, 1) as $kolom){ //fungsi foreach
untuk kolom
echo $matriks1[$baris][$kolom]; //tampilkan
isi matriks 1 per baris.kolom
echo " "; //Buat spasi agar tidak rapat
}
echo "<br>"; //Setiap selesai, maka pindah ke
baris baru
}
echo "Matriks 2<br>"; //Menampilkan judul untuk
Matriks 2
foreach(range(0, 1) as $baris){ //fungsi foreach untuk
baris
foreach(range(0, 1) as $kolom){ //fungsi foreach
untuk kolom
echo $matriks2[$baris][$kolom]; //tampilkan
isi matriks 2 per baris.kolom
echo " "; //Buat spasi agar tidak rapat
}
II-15

echo "<br>"; //Setiap selesai, maka pindah ke


baris baru
}
echo "Hasil Penjumlahan Matriks 1 dan 2<br>";
//Menampilkan judul untuk Matriks hasil
foreach(range(0, 1) as $baris){ //fungsi foreach untuk
baris
foreach(range(0, 1) as $kolom){ //fungsi foreach
untuk kolom
//Jumlahkan $matriks1 dengan $matriks2 dan
masukkan nilainya ke $matriks
$matriks[$baris][$kolom] = $matriks1[$baris]
[$kolom] + $matriks2[$baris][$kolom];
echo $matriks[$baris][$kolom]; //tampilkan isi
matriks hasil per baris.kolom
echo " "; //Buat spasi agar tidak rapat
}
echo "<br>"; //Setiap selesai, maka pindah ke
baris baru
}
?>
Analisis
Pertama deklarasikan variabel array untuk matriks. Kita membutuhkan
3 matriks, yaitu matriks1, matriks2, dan matriks untuk menyimpan
hasil. Lalu isi semua indeks matriks itu satu persatu. Tampilkan matriks
satu persatu, pertama matriks1. Disini menggunakan pengulangan
foreach untuk menampilkannya. Karena matriksnya hanya 2x2, maka
rangenya hanya 0 sampai 1. Simpan range pertama untuk baris. Lalu
buat foreach lagi di dalamnya dan simpan untuk kolom. Tampilkan
matriks1 dengan echo dan indeksnya yaitu sesuai baris dan kolomnya,
proses akan secara otomatis mengambil nilai $baris dan $kolomnya
karena tadi sudah disimpan terlebih dahulu. Jadi, isi indeksnya dengan
[$baris][$kolom] agar otomatis mengambil nilai sesuai indeksnya.
Tambahkan pemisah agar tidak berdempetan. Setelah selesai, pindah ke
foreach baris dan tambahkan break agar berpindah ke baris baru setiap
indeks baris habis. Lalu untuk penjumlahannya hanya perlu memanggil
matriks pertama dan kedua dan dijumlahkan, tentunya di dalam foreach.
II-16

Anda mungkin juga menyukai