Anda di halaman 1dari 10

Pertemuan 9: Fungsi dan Array pada PHP

Fungsi
Kekuatan dari PHP berasalah dari fungsi-fungsinya. PHP memiliki lebih
dari 1000 fungsi built-in. Namun dalam PHP bisa juga dibuat fungsi sendiri.
Fungsi adalah blok kode yang bisa digunakan secara berulang-ulang kali
dalam program. Fungsi tidak akan dieksekusi secara langsung jika halaman
web sedang dimuat. Sebuah fungsi akan dieksekusi oleh fungsi yang
memanggilnya. Syntax dari fungsi yagn dibuat sendiri adalah sebagai berikut:

function nama_fungsi() {
kode yang akan dieksekusi.
}

Nama fungsi bisa dimulai dengan huruf atau garis bawah (bukan bilangan).
Tentukan nama fungsi berdasarkan apa kegunaannya.
Informasi dari luar fungsi bisa dimasukkan kedalam fungsi melalui
argument. Argumen adalah seperti variabel. Argumen dispesifikasikan setelah
nama fungsi didalam kurung. Argument bisa dibuat banyak, antara deklarasi
argument harus dipisah dengan tanda koma. Jika argumen memiliki nilai
default, maka argument tersebut bisa langsung ditentukan nilainya dengan
tanda sama dengan. Berikut adalah contoh penetukan argument dengan nilai
default.

<?php
function setHeight($minheight = 50) {
echo "The height is : $minheight <br>";
}

setHeight(350);
setHeight(); // will use the default value of 50
setHeight(135);
setHeight(80);
?>

Fungsi juga bisa memberikan nilai kembalian. Untuk memberikan nilai


kembalian, fungsi tersebut harus menggunakan perintah return. Berikut
adalah contoh dari fungsi yang mengembalikan sebuah nilai:
<?php
function sum($x, $y) {
$z = $x + $y;
return $z;
}

echo "5 + 10 = " . sum(5, 10) . "<br>";


echo "7 + 13 = " . sum(7, 13) . "<br>";
echo "2 + 4 = " . sum(2, 4);
?>

Array
Array adalah variabel khusus, yang bisa menyimpan banyak nilai pada
satu waktu. Nilai dalam array bisa diakses dengan cara merujuk pada
indexnya. Pada PHP fungsi array() digunakan untuk membuat sebuah array.
Pada PHP, terdapat tiga macam tipe array:

Array Terindex
Array terindex adalah array dengan index numerik. Ada dua cara untuk
membuat array terindex, pertama, array bisa ditentukan secara otomatis
dimana indexnya selalu mulai dari 0, contoh : $mobil =
array(“volvo”,”BMW”,”Toyota”); dan yang kedua, array bisa ditentukan secara
manual, contohnya sebagai berikut:

$mobil[0] = “Volvo”;
$mobil[1] = “BMW”;
$mobil[2] = “Toyota”;

Panjang array atau jumlah element bisa juga dihitung menggunakan


fungsi count(), untuk menghitung jumlah element pada variabel array $mobil[]
dapat ditulis count($mobil), fungsi ini akan mengembalikan nilai integer
sebagai jumlah element dalam variabel $mobil[].

Array Assosiatif
Array asosiatif adalah array dengan nama kunci yang ditentukan. Ada
dua cara membuat array assosiatif, pertama dengan mendeklarasikan ketika
memanggil fungsi array(), contoh : $umur = array(“Peter”=>”35”, ”Ben”=>”37”,
”Joe”=>”43”); yang kedua dengan mendeklarasikan nilainya satu-persatu,
contoh:
$umur[‘Peter’] = “35”;
$umur[‘Ben’] = “37”;
$umur[‘Joe’] = “43”;

Untuk melakukan perulangan pada array assosiatif, dapat


menggunakan foreach($variabel as $kunci => $nilai) dimana $variabel adalah
variabel array, $kunci adalah variabel yang akan berisi kunci array dan $nilai
adalah variabel yanb berisi nilai dari array.
Element dalam sebuah array bisa diurutkan dalam susunan alpabet
atau numeris, descending atau ascending. Berikut adalah fungsi-fungsi yang
bisa digunakan untuk mengurutkan element-element dalam array:
sort() - Mengurutkan array dalam susunan ascending. Misalkan fungsi ini
digunakan untuk mengurutkan array $mobil, maka isi array $mobil
akan terurut berdasarkan alphabet, yaitu sebagai berikut:

BMW
T
o
y
o
t
a

V
o
l
v
o

rsort() - Mengurutkan array dalam susuan descending. Misalkan fungsi ini


digunakan untuk mengurutkan array $mobil, maka urutan nilai pada
array mobil akan menjadi sebagai berikut:

V
o
l
v
o

T
o
y
o
t
a

B
M
W

asort() - Mengurutkan array assosiatif dalam susunan ascending,


berdasarkan pada nilainya. Misalkan fungsi ini digunakan untuk
mengurutkan nilai pada variabel array $umur, maka urutannya akan
berdasarkan nilai pada variabel tersebut. Jika dicetak dengan
kuncinya tampilan isi dari array $umur adalah sebagai berikut:

Peter 35
Ben 37
Joe 43

ksort() - Mengurutkan array assosiatif dalam susunan ascending,


berdasarkan kuncinya. Misalkan fungsi ini digunakan untuk
mengurutkan kunci pada array $umur, maka kunci pada variabel
tersebut akan terurut ascending seperti berikut:

Joe 43
Ben 37
Peter 35

arsort() - Mengurutkan array assosiatif dalam susunan descending,


berdasarkan pada nilainya. Misalkan fungsi ini digunakan untuk
mengurutkan data pada variabel
$umur, maka urutan data pada variabel tersebut akan mengikuti
susunan nilai dari besar ke kecil.

Joe 43
Ben 37
Peter 35

krsort() - Mengurutkan array assosiatif dalam susunan descending,


berdasarkan kuncinya. Misalkan fungsi ini digunakan untuk
mengurutkan data pada variabel array $umur, maka susunannya
akan mengurutkan kunci dari besar akhir pada alphabet ke awal
pada alphabet.

Peter 35
Joe 43
Ben 37
Array Multidimensi
Array multidimesi adalah array yang mengandung satu atau banyak
array. Dimensi dari sebuah array mengidikasikan jumlah index yang
diperlukan untuk memilih element. Array dua dimensi memerlukan dua index
untuk memilih sebuah element, array tiga dimensi memerlukan tiga index
untuk memilih sebuah element.

Name Stock Sold


Volvo 22 18
BMW 15 13
Saab 5 2
Land Rover 17 15

Misalkan array dua dimensi digunakan untuk menyimpan data-data


pada tabel diatas, maka contoh kode program untuk menyimpan data-data
tersebut adalah sebagai berikut:

$cars = array(
array("Volvo",22,18),
array("BMW",15,13),
array("Saab",5,2
), array("Land
Rover",17,15)
);

Variabel Global dan Superglobal


Superglobal diperkenalkan pada PHP 4.1.0 dan merupakan variabel
built-in yang selalu ada pada semua scope atau lingkup. Beberapa variabel
yang didefinisi sebelumnya dalam PHP adalah “superglobal”, yang berarti
bahwa mereka selalu bisa diakses tanpa terpengaruh oleh lingkup atau scope
sehingga bisa diakses oleh semua fungsi atau class tanpa harus melakukan
suatu teknik khusus.

Variabel PHP superglobal adalah sebagai berikut:

PHP $GLOBALS
$GLOBALS adalah sebuah variabel PHP yang super global yang
digunakan untuk mengakses variabel dari mana saja didalam script PHP,
termasuk dari dalam fungsi atau method. PHP menyimpan semua variabel-
variabel global dalam sebuah array
$GLOBALS[index]. Index adalah nama dari variabel. Contoh berikut
menunjukkan cara menggunakan variabel $GLOBALS:

<?php
$x = 75;
$y = 25;
function addition() {
$GLOBALS['z'] = $GLOBALS['x'] + $GLOBALS['y'];
}
addition();
echo $z;
?>

$_SERVER
$_SERVER adalah variabel super global yang menyimpan informasi
tentang header-header, path-path (jalur), dan skrip lokasi. Berikut adalah
contoh penggunaan variabel global $_SERVER:

<?php
echo $_SERVER['PHP_SELF'];
echo "<br>";
echo $_SERVER['SERVER_NAME'];
echo "<br>";
echo $_SERVER['HTTP_HOST'];
echo "<br>";
echo $_SERVER['HTTP_REFERER'];
echo "<br>";
echo $_SERVER['HTTP_USER_AGENT'];
echo "<br>";
echo $_SERVER['SCRIPT_NAME'];
?>
Tabel berikut adalah daftar dari elemen-elemen penting yang bisa digunakan
pada variabel $_SERVER:
$_REQUEST
$_REQUEST PHP digunakan untuk mengumpulkan data setelah
submit sebuah form HTML. Contoh berikut menunjukkan sebuah form dengan
field input dan tombol submit. Ketika user melakukan submit data dengan
menekan “Submit”, data form dikirimkan untuk file yang dispesifikasikan
dalam atribut aksi dari tag <form>. Dalam contoh ini, kita memperhatikan file
ini memproses data form. Jika pengguna ingin menggunakan file PHP lain
untuk memproses data form, menggantinya dengan nama file yang dipilih,
maka gunakan variabel super global $_REQUEST untuk mengumpulkan field
nilai input.

<html>
<body>
<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
Name: <input type="text" name="fname">
<input type="submit">
</form>
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// mengumpulkan nilai input field
$name = $_REQUEST['fname'];
if (empty($name)) {
echo "Name is empty";
} else {
echo $name;
}
}
?>
</body>
</html>

$_POST
$_POST PHP sangat banyak digunakan untuk mengumpulkan data
form setelah submit sebuah form HTML dengan method=“post”. $_POST juga
banyak digunakan untuk melewatkan variabel. Contoh berikut menunjukkan
sebuah form dengan sebuah input field dan sebuah tombol submit. Ketika
user melakukan submit data dengan menekan tombol submit, data form
dikirim ke file yang dispesifikasikan dalam atribut aksi dari tag <form>. Pada
contoh ini, perhatikan file untuk pemrosesan data. Jika ingin menggunakan file
PHP lain untuk memproses data form, ganti dengan nama file yang
diinginkan. Kemudian, gunakan variabel super global $_POST untuk
mengumpulkan nilai field input.

<html>
<body>
<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
Name: <input type="text" name="fname">
<input type="submit">
</form>
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// collect value of input field
$name = $_POST['fname'];
if (empty($name)) {
echo "Name is empty";
} else {
echo $name;
}
}
?>
</body>
</html>
$_GET
$_GET PHP bisa digunakan untuk mengumpulkan data form setelah
submit sebuah form HTML dengan method=”get”. Juga bisa digunakan untuk
mengumpulkan data yang dikirimkan dalalam URL. Asumsikan halaman
HTML yang mengandung hyperlink dengan parameter berikut:

<html>
<body>
<a href=”test_get.php?subject=PHP&web=umrah.ac.id”>Test $GET </a>
</body>
</html>

kemudian user meng-klik link “Test $GET”, parameter “subject” dan


“web” dikirimkan ke skrip “test_get.php”, nilai dari kedua parameter tersebut
bisa diakses dengan $_GET. Contoh berikut adalah skrip yang bisa
mengakses nilai dari dua parameter tersebut.

<html>
<body>
<?php
echo "Study " . $_GET['subject'] . " at " . $_GET['web'];
?>
</body>
</html>

Anda mungkin juga menyukai