Anda di halaman 1dari 11

Tipe Data PHP

7 var_dump($salah); // bool(false)

Penulisan nilai boolean tidak harus menggunakan huruf kecil. Baik TRUE, True, maupun tRuE
dianggap sama oleh PHP.

30.boolean_contoh2.php
1 <?php
2 $benar = TRUE;
3 if ($benar) {
4 echo "Anda Benar!"; // Anda Benar!
5 }

Peran tipe data boolean baru terlihat jika digunakan untuk kondisi IF seperti di atas. Kita akan
membahas alur logika IF ini dalam bab tersendiri.

7.8. Tipe Data Array


Array (atau larik dalam Bahasa Indonesia) adalah tipe data bentukan yang terdiri dari
kumpulan tipe data lain dan tersusun berurutan. Walaupun data array umumnya sejenis
(kumpulan nama (string) saja, kumpulan angka (integer) saja, dst), di dalam PHP sebuah array
bisa terdiri dari berbagai jenis tipe data seperti integer, float, string, boolean, bahkan juga array
lain.

Untuk data yang banyak, menggunakan array jauh lebih mudah dan efisien. Sebagai contoh,
jika butuh menyimpan beberapa nama siswa, kita bisa membuatnya seperti berikut ini:

31.array_contoh_nonarray.php
1 <?php
2 $siswa0="Andri";
3 $siswa1="Joko";
4 $siswa2="Sukma";
5 $siswa3="Rina";
6 $siswa4="Sari";
7
8 echo $siswa1; // Joko

Dengan menggunakan array, penulisannya jadi seperti ini:

32.array_contoh_array.php
1 <?php
2 $siswa = array("Andri","Joko","Sukma","Rina","Sari");
3 echo $siswa[1]; // Joko

Jauh lebih praktis dan efisien. Bayangkan jika butuh 1000 data siswa, tanpa array kita harus
membuat 1000 variabel. Dengan array, cukup 1 variabel saja.

110
Tipe Data PHP

Cara Membuat Array


PHP menyediakan 2 cara pembuatan array. Cara pertama adalah dengan memakai keyword
array seperti contoh berikut:

$siswa = array("Andri","Joko","Sukma","Rina","Sari");

Perhatikan bahwa isi dari array dibuat dalam tanda kurung dan masing-masingnya dipisah
dengan tanda koma.

Cara kedua adalah dengan 'short syntax array', yakni menggunakan tanda kurung siku tanpa
keyword "array" . Fitur ini tersedia sejak PHP 5.4 dan lebih praktis:

$siswa = ["Andri","Joko","Sukma","Rina","Sari"];

Ketika kita membuat array, urutan penulisan menentukan posisi nilai tersebut di dalam array.
Misalkan, "Andri" berada di urutan pertama array $siswa, "Joko" diurutan kedua, dan
seterusnya hingga "Sari" di urutan kelima. Data yang ada di dalam array ini dikenal juga
dengan istilah element array.

Cara Mengakses Element Array


Untuk mengakses element array, dilakukan dengan cara menulis nama variabel kemudian
diikuti nomor index di dalam kurung siku. Berikut contohnya:

33.array_mengakses_array1.php
1 <?php
2 $siswa = array("Andri","Joko","Sukma","Rina","Sari");
3
4 echo $siswa[2]; // Sukma
5 echo "<br>";
6 echo "Murid itu bernama $siswa[0]"; // Murid itu bernama Andri

Index adalah urutan element di dalam array. Yang harus wajib diingat, penomoran index di
mulai dari 0, bukan 1. Dengan demikian, element pertama array memiliki index 0, element
kedua ber-index 1, dst. Penomoran array yang mulai dari 0 ini bukan hanya di PHP saja, tapi
juga hampir di semua bahasa pemrograman populer seperti C, JavaScript atau Java.

Dalam PHP, element array juga bisa terdiri dari campuran berbagai tipe data, seperti contoh
berikut:

34.array_mengakses_array2.php
1 <?php
2 $macam2 = array(121,"Joko",44.99,"Belajar PHP",true);
3
4 echo $macam2[0]; // 121
5 echo "<br>";

111
Tipe Data PHP

6 echo $macam2[1]; // Joko


7 echo "<br>";
8 echo $macam2[2]; // 44.99
9 echo "<br>";
10 echo $macam2[3]; // Belajar PHP
11 echo "<br>";
12 echo $macam2[4]; // 1 (boolean true)

Dalam contoh ini, array $macam2 berisi berbagai jenis tipe data, mulai dari integer, float,
string dan boolean. Untuk data yang lebih rumit, kita juga bisa menyimpan array di dalam
array.

Element array ini bisa juga disebut sebagai anggota atau isi dari array.

Menambah Element Array


Setelah sebuah array di definisikan, kita bisa menambah element baru ke dalam array
tersebut. Berikut contohnya:

33.array_mengakses_array1.php
1 <?php
2 $macam2 = array(121,"Joko",44.99,"Belajar PHP");
3 $macam2[4] = "Duniailkom";
4 $macam2[5] = 212;
5 $macam2[6] = 3.14;
6
7 echo "<pre>";
8 var_dump($macam2);
9 echo "</pre>";

Hasil kode program:

array(7) {
[0]=> int(121)
[1]=> string(4) "Joko"
[2]=> float(44.99)
[3]=> string(11) "Belajar PHP"
[4]=> string(10) "Duniailkom"
[5]=> int(212)
[6]=> float(3.14)
}

Di baris 2 saya membuat array $macam2 yang terdiri dari 4 element. Element ini dimulai dari
nomor index 0, 1, 2, dan 3. Dengan demikian nomor index berikutnya adalah 4.

Di baris 3 – 5 saya mengisi index 4, 5 dan 6 ke dalam array $macam2. Cara pengisian array ini
mirip seperti mengisi variabel biasa, hanya saja kita harus menulis nomor index mana yang
akan diisi. Untuk menampilkan array, saya menempatkan perintah var_dump() di antara tag

112
Tipe Data PHP

<pre> HTML. Tujuannya agar hasil var_dump() terlihat lebih rapi.

Bagaimana jika kita tidak tahu nomor index terakhir dari array tersebut? PHP membolehkan
pengisian array tanpa nomor index:

34.array_mengakses_array2.php
1 <?php
2 $macam2 = array(121,"Joko",44.99,"Belajar PHP");
3 $macam2[] = "Duniailkom";
4 $macam2[] = 212;
5 $macam2[] = 3.14;
6
7 echo "<pre>";
8 var_dump($macam2);
9 echo "</pre>";

Hasil kode program:

array(7) {
[0]=> int(121)
[1]=> string(4) "Joko"
[2]=> float(44.99)
[3]=> string(11) "Belajar PHP"
[4]=> string(10) "Duniailkom"
[5]=> int(212)
[6]=> float(3.14)
}

Jika variabel array ditulis tanpa nomor index, PHP otomatis menambah element baru di urutan
terakhir.

Bagaimana jika nomor index ini dibuat tidak terurut? Ternyata PHP juga membolehkan
penulisan seperti itu:

34a.array_mengakses_array3.php
1 <?php
2 $macam2 = array(121,"Joko",44.99,"Belajar PHP");
3 $macam2[10] = "Duniailkom";
4 $macam2[100] = 212;
5 $macam2[1000] = 3.14;
6
7 echo "<pre>";
8 var_dump($macam2);
9 echo "</pre>";

Hasil kode program:

array(7) {
[0]=> int(121)
[1]=> string(4) "Joko"
[2]=> float(44.99)

113
Tipe Data PHP

[3]=> string(11) "Belajar PHP"


[10]=> string(10) "Duniailkom"
[100]=> int(212)
[1000]=> float(3.14)
}

Di baris 3 – 5 saya mengisi array $macam2 untuk nomor index 10, 100 dan 1000, semuanya bisa
di tampung di dalam array.

Jika kita mengisi nomor index yang sudah ada sebelumnya, nilai baru akan menimpa nilai lama:

36b.array_menimpa_element.php
1 <?php
2 $macam2 = array(121,"Joko",44.99,"Belajar PHP");
3 $macam2[1] = "Duniailkom";
4 $macam2[2] = 212;
5
6 echo "<pre>";
7 var_dump($macam2);
8 echo "</pre>";

Hasil kode program:

array(4) {
[0]=> int(121)
[1]=> string(10) "Duniailkom"
[2]=> int(212)
[3]=> string(11) "Belajar PHP"
}

Pada saat pembuatan array $macam2 di baris 2, index 1 dan 2 diisi dengan nilai " Joko" dan 44.99,
namun di baris 3 dan 4 index tersebut diisi ulang dengan nilai " Duniailkom" dan 212. Hasilnya,
nilai di index 1 dan index 2 sudah berganti.

Menghapus Element Array


Untuk menghapus element array, kita bisa menggunakan fungsi unset(), seperti contoh
berikut:

36c.array_menghapus_element.php
1 <?php
2 $macam2 = array(121,"Joko",44.99,"Belajar PHP");
3 $macam2[] = "Duniailkom";
4
5 unset($macam2[0]);
6 unset($macam2[2]);
7 unset($macam2[3]);
8
9 echo "<pre>";
10 var_dump($macam2);

114
Tipe Data PHP

11 echo "</pre>";

Hasil kode program:

array(2) {
[1]=>
string(4) "Joko"
[4]=>
string(10) "Duniailkom"
}

Dalam contoh ini saya menggunakan fungsi unset() untuk menghapus element array index ke
0, 2 dan 3.

Perhatikan juga bahwa setelah dihapus, nomor index untuk element lain tidak berubah.
Meskipun kita sudah menghapus index ke-0, tidak otomatis element lain pindah mengisi index
0 ini.

Array Multi Dimensi


Array yang kita coba sebelumnya hanya terdiri dari 1 dimensi. Untuk data yang lebih kompleks
(seperti titik koordinat), kita bisa membuat array 2 dimensi. Array 2 dimensi sebenarnya
sebutan untuk array di dalam array. Berikut contohnya:

37.array_2_dimensi1.php
1 <?php
2 $koordinat = array(
3 array(8,2),
4 array(2,4),
5 array(1,7)
6 );
7
8 echo $koordinat[0][0]; // 8
9 echo "<br>";
10 echo $koordinat[0][1]; // 2
11 echo "<br>";
12 echo $koordinat[2][1]; // 7
13 echo "<br>";

Dalam mengakses array seperti ini, kita harus menulis 2 buah index, seperti $koordinat[2][1].

Index pertama dipakai untuk mencari posisi array pertama dan index kedua untuk posisi array
di dalam array. Sebagai latihan, berapakah index untuk menampilkan angka 4? saya bisa
menggunakan $koordinat[1][1] (ingat, penomoran index dimulai dari nol).

Array 2 dimensi ini juga bisa dibuat menggunakan 'short syntax array':

37a.array_2_dimensi_short_syntax.php
1 <?php

115
Tipe Data PHP

2 $koordinat = [[8,2],[2,4],[1,7]];
3
4 echo $koordinat[0][0]; // 8
5 echo "<br>";
6 echo $koordinat[0][1]; // 2
7 echo "<br>";
8 echo $koordinat[2][1]; // 7
9 echo "<br>";

Agar array yang kompleks seperti ini bisa dilihat dengan lebih detail, kita bisa menggunakan
fungsi print_r(). Fungsi print_r() mirip seperti var_dump(), tetapi tanpa menampilkan tipe
data:

38.array_2_dimensi2.php
1 <?php
2 $koordinat = [[8,2],[2,4],[1,7]];
3
4 echo "<pre>";
5 print_r($koordinat);
6 echo "</pre>";

Hasil kode program:


Array
(
[0] => Array
(
[0] => 8
[1] => 2
)

[1] => Array


(
[0] => 2
[1] => 4
)

[2] => Array


(
[0] => 1
[1] => 7
)

Untuk aplikasi yang lebih rumit, kita juga bisa membuat array 3 dimensi, yakni sebutan lain
dari array di dalam array di dalam array, berikut contohnya:

38a.array_3_dimensi.php
1 <?php
2 $koordinat = [
3 [

116
Tipe Data PHP

4 ["A"],["B"]
5 ],
6 [
7 ["C"],["D"]
8 ],
9 ];
10
11 echo $koordinat[0][0][0]; // A
12 echo "<br>";
13 echo $koordinat[0][1][0]; // B
14 echo "<br>";
15 echo $koordinat[1][0][0]; // C
16 echo "<br>";
17 echo $koordinat[1][1][0]; // D

Jika anda menemukan struktur array 3 dimensi seperti ini, fungsi var_dump() atau print_r()
akan membantu untuk melihat struktur keseluruhan array.

Array 2 dimensi sangat sering dipakai, misalnya ketika menampilkan hasil tabel dari
MySQL, itu berbentuk array 2 dimensi (terdiri dari baris dan kolom).

Associative Array
Associative array adalah array yang indexnya bukan dibuat dengan penomoran, tetapi dengan
objek lain seperti string. Sebagai contoh, kita bisa mengakses array dengan $siswa["satu"]
atau $siswa["terbaik"].

Untuk membuat associative array, caranya hampir sama dengan array normal, tapi
menggunakan tanda panah " => ". Berikut contohnya:

39.array_assoc1.php
1 <?php
2 $siswa = array(
3 "satu" => "Andri",
4 "dua" => "Joko",
5 "tiga" => "Sukma",
6 "empat" => "Rina"
7 );
8
9 echo $siswa["dua"]; // Joko
10 echo "<br>";
11 echo $siswa["empat"]; // Rina

Dalam contoh ini, "satu", "dua", "tiga" dan "empat" adalah index array. Index seperti ini sering
disebut sebagai label atau key. Sedangkan nilainya disebut dengan value. Pembuatan
associative array dilakukan dengan format "key" => "value", sedangkan pengaksesan nilai array
dilakukan dengan menulis $nama_array["key"].

Alternatifnya kita bisa menggunakan 'short syntax array':

117
Tipe Data PHP

39a.array_assoc_short_syntax.php
1 <?php
2 $siswa = [
3 "satu" => "Andri",
4 "dua" => "Joko",
5 "tiga" => "Sukma",
6 "empat" => "Rina"
7 ];
8
9 echo $siswa["dua"]; // Joko
10 echo "<br>";
11 echo $siswa["empat"]; // Rina

Cara penulisan array di atas sengaja di buat agar mudah dibaca. Kita juga bisa menulisnya
dalam 1 baris panjang:

40.array_assoc2.php
1 <?php
2 $siswa = ["satu"=>"Andri","dua"=>"Joko","tiga"=>"Sukma","empat"=>"Rina"];
3
4 echo "<pre>";
5 print_r($siswa);
6 echo "</pre>";

Hasil kode program:

Array
(
[satu] => Andri
[dua] => Joko
[tiga] => Sukma
[empat] => Rina
)

Label atau key dari associative array tidak harus berupa string, tapi juga bisa berupa angka.
Penambahan elemen baru juga mirip dengan normal array:

41.array_assoc3.php
1 <?php
2 $assoc = [ "satu" => 10000,
3 "dua" => "Duniailkom",
4 4 => "Belajar PHP",
5 1000 => "Jadi programmer"];
6
7 $assoc["baru"]="Data Baru";
8 $assoc[99]="Sembilan puluh sembilan";
9
10 $assoc[]="Ini akan pakai index berapa?";
11 $assoc[]=123456;
12
13 echo "<pre>";

118
Tipe Data PHP

14 print_r($assoc);
15 echo "</pre>";

Hasil kode program:

Array
(
[satu] => 10000
[dua] => Duniailkom
[4] => Belajar PHP
[1000] => Jadi programmer
[baru] => Data Baru
[99] => Sembilan puluh sembilan
[1001] => Ini akan pakai index berapa?
[1002] => 123456
)

Dalam contoh ini saya membuat array $assoc dengan berbagai nilai key dan value. Selanjutnya
ditambah beberapa element baru ke dalam array ini.

Perhatikan bahwa ketika element baru ditambah tanpa menulis key-nya, element tersebut
akan disimpan ke dalam key integer terakhir. Karena saya memiliki key dengan index integer
tertinggi "1000", maka string "Ini akan pakai index berapa?" akan disimpan ke dalam index
1001, begitu juga dengan value 123456 akan disimpan ke dalam index 1002, dst.

Dengan associative array kita bisa membuat struktur data yang lebih rapi seperti contoh
berikut:

42.array_assoc4.php
1 <?php
2 $siswa = [
3 "kelas_x" => ["Santi", "Yanto", "Reza"],
4 "kelas_xi" => ["Tia", "Siska", "Nova"],
5 "kelas_xii" => ["Robert", "Rudi", "Alex"]
6 ];
7
8 echo $siswa["kelas_xi"][0]; //Tia
9 echo "<br>";
10 echo $siswa["kelas_xii"][2]; // Alex
11 echo "<br>";
12 echo $siswa["kelas_x"][1]; // Yanto
13
14 echo "<pre>";
15 print_r($siswa);
16 echo "</pre>";

Hasil kode program:

Tia
Alex

119
Tipe Data PHP

Yanto
Array
(
[kelas_x] => Array
(
[0] => Santi
[1] => Yanto
[2] => Reza
)

[kelas_xi] => Array


(
[0] => Tia
[1] => Siska
[2] => Nova
)

[kelas_xii] => Array


(
[0] => Robert
[1] => Rudi
[2] => Alex
)

Di sini saya membuat array $siswa yang langsung dikelompokkan menurut kelasnya masing-
masing.

Beberapa programmer ada yang memiliki kebiasaan menambah tanda koma setelah
element array terakhir, seperti berikut:

$siswa = ["Santi","Yanto","Reza",];

Ini dibuat agar memudahkan seandainya nanti ingin menambah element baru.

7.9. Tipe Data Object


Object adalah tipe data khusus yang juga terdiri dari berbagai data (mirip dengan array).
Namun di dalam object kita bisa memiliki function sendiri (dikenal sebagai method).

Berikut adalah contoh penggunaan tipe data object:

43.object_contoh.php
1 <?php
2 class Siswa {
3 public $nama;
4 public $umur;
5 public $tgl_lahir;
6

120

Anda mungkin juga menyukai