Memahami Array di PHP

Bayangkan sekarang kita sedang membuat aplikasi web, lalu ingin menampilkan daftar nama-nama produk.

Bisa saja kita buat seperti ini:

<?php
$produk1 = "Modem";
$produk2 = "Hardisk";
$produk3 = "Flashdisk";

echo "$produk1<br>";
echo "$produk2<br>";
echo "$produk3<br>";

Apakah boleh seperti ini?

Boleh-boleh saja. Tapi kurang efektif.

Kenapa?

Bagaimana kalau ada 100 produk, apakah kita akan membut variabel sebanyak 100 dan melakukan echo sebanyak 100x?

Capek donk.

Karena itu, kita harus menggunakan Array.

Pada kesempatan ini, kita akan membahas:

  1. Apa itu Array?
  2. Cara membuat Array di PHP dan Mengisinya
  3. Cara menampilkan nilai Array
  4. Cara Menghapus isi Array
  5. Cara Menambah isi Array
  6. Array Assosiatif
  7. Array Multidimensi

Mari kiata mulai…

1. Apa itu Array?

Array adalah salah satu struktur data yang berisi sekumpulan data dan memiliki indeks. Indeks digunakan untuk mengakses nilai array.

Indeks array selalu dimulai dari nol (0).

Contoh:

Array

Jadi, apabila kita ingin menampilkan “Hardisk 2TB”, maka kita harus mengampil indeks yang ke-0.

Untuk leblih jelasnya, mari kita coba…

2. Membuat Array di PHP

Array di PHP dapat kita buat dengan fungsi array() dan tanda kurung kotak [].

Contoh:

<?php

// membuat array kosong
$buah = array();
$hobi = [];

// membuat array sekaligus mengisinya
$minuman = array("Kopi", "Teh", "Jus Jeruk");
$makanan = ["Nasi Goreng", "Soto", "Bubur"];

// membuat array dengan mengisi indeks tertentu
$anggota[1] = "Dian";
$anggota[2] = "Muhar";
$anggota[0] = "Petani Kode";

Cukup mudah bukan.

Oya, array dapat kita isi dengan tipe data apa saja. Bahkan dicampur juga boleh.

Contoh:

<?php

$item = ["Bunga", 123, 39.12, true];

3. Menampilkan isi Array

Untuk menampilkan isi array, kita bisa mengaksesnya melalui indeks.

Contoh:

<?php
// membuat array
$barang = ["Buku Tulis", "Penghapus", "Spidol"];

// menampilkan isi array
echo $barang[0]."<br>";
echo $barang[1]."<br>";
echo $barang[2]."<br>";

Hasilnya:

Menampilkan Array

Tapi cara ini kurang efektif, karen akita mencetak satu per satu. Nanti kalau datanya ada 1000, berarti harus ngetik peritnah echo sebanyak 1000.

Lalu bagaimana donk?

Biasanya kita menggunakan perulangan.

Contoh:

<?php
// membuat array
$barang = ["Buku Tulis", "Penghapus", "Spidol"];

// menampilkan isi array dengan perulangan for
for($i=0; $i < count($barang); $i++){
    echo $barang[$i]."<br>";
}

Kita bisa menggunakan fungsi count() untuk menghitung banyaknya isi array. Pada contoh di atas isi array sebanyak 3, maka perulangan akan dilakukan sebanyak 3x.

Hasilnya:

Menampilkan Array

Selain menggunakan perulangan for, kita juga bisa menggunakan perulangan while dan foreach.

Contoh:

<?php

// membuat array
$barang = ["Buku Tulis", "Penghapus", "Spidol"];

// menampilkan isi array dengan perulangan foreach
foreach($barang as $isi){
    echo $isi."<br>";
}

echo "<hr>";

// menampilkan isi array dengan perulangan while
$i = 0;
while($i < count($barang)){
    echo $barang[$i]."<br>";
    $i++;
}

Hasilnya:

Menampilkan Array

4. Menghapus isi Array

Untuk menghapus isi array, kita bisa menggunakan fungsi unset(). Fungsi ini juga dapat digunakan untuk menghapus variabel.

Contoh:

<?php

// membuat array
$hewan = [
    "Burung",
    "Kucing",
    "Ikan"
];

// menghapus kucing
unset($hewan[1]);

echo $hewan[0]."<br>";
echo $hewan[1]."<br>";
echo $hewan[2]."<br>";

echo "<hr>";

echo "<pre>";
print_r($hewan);
echo "</pre>";

Hasilnya:

Menghapus Array

Pada contoh di atas, Kita menggunakan fungsi print_r() untuk menampilkan array secara mentah (raw). Biasanya fungsi ini digunakan untuk debugging.

5. Menambahkan isi Array

Ada dua cara yang bisa dilakukan untuk menambah isi array:

  1. Mengisi langsung ke nomer indeks yang ingin ditambahkan
  2. Mengisi langsung ke indeks terakhir

Mari kita coba kedua-duanya.

<?php
// membuat array
$hobi = [
    "Membaca",
    "Menulis",
    "Ngeblog"
];

// menambahkan isi pada idenks ke-3
$hobi[3] = "Coding";

// menambahkan isi pada indeks terakhir
$hobi[] = "Olahraga";

// cetak array dengan perulangan
foreach($hobi as $hobiku){
    echo $hobiku."<br>";
}
?>

Hasilnya:

Mengisi Array

Apabila kita menambahkan pada indeks yang sudah memiliki isi, maka isinya akan ditindih dengan yang baru.

Contoh:

<?php
// membuat array
$user = [
    "dian",
    "muhar",
    "petanikode"
];

// mengisi array pada indek ke-1 ("muhar")
$user[1] = "ardianta";

// mencetak isi array
echo "<pre>";
print_r($user);
echo "</pre>";
?>

Hasilnya:

Array
(
    [0] => dian
    [1] => ardianta
    [2] => petanikode
)

6. Array Asosiatif

Array asosiatif adalah array yang indeksnya tidak menggunakan nomer atau angka. Indeks array asosiatif berbentuk kata kunci.

Contoh:

<?php
// membuat array asosiatif
$artikel = [
    "judul" => "Belajar Pemrograman PHP",
    "penulis" => "petanikode",
    "view" => 128
];

// mencetak isi array assosiatif
echo "<h2>".$artikel["judul"]."</h2>";
echo "<p>oleh: ".$artikel["penulis"]."</p>";
echo "<p>View: ".$artikel["view"]."</p>";

Hasilnya:

Array Asosiatif

Pada array asosiatif, kita menggunakan tanda => untuk mengasosiasikan sebuah kata kunci dengan isi array. Selain menggunakan tanda =>, kita juga bisa membuat array aosiatif seperti ini:

<?php
$email["subjek"] = "Apa Kabar?";
$email["pengirim"] = "[email protected]";
$email["isi"] = "Apa kabar? sudah lama tidak berjumpa";

echo "<pre>";
print_r($email);
echo "</pre>";

Hasilnya:

Array
(
    [subjek] => Apa Kabar?
    [pengirim] => [email protected]
    [isi] => Apa kabar? sudah lama tidak berjumpa
)

7. Array Multi Dimensi

Array multi dimensi adalah array yang memiliki dimensi lebih dari satu. Biasanya digunakan untuk membuat matrik, graph, dan stuktur data rumit lainnya.

Contoh:

<?php
// ini adalah array dua dimensi
$matrik = [
    [2,3,4],
    [7,5,0],
    [4,3,8],
];

// cara mengakses isinya
echo $matrik[1][0]; //-> output: 7

Masi kita coba contoh yang lain:

<?php
// membuat array 2 dimensi yang berisi array asosiatif
$artikel = [
    [
        "judul" => "Belajar PHP & MySQL untuk Pemula",
        "penulis" => "petanikode"
    ],
    [
        "judul" => "Tutorial PHP dari Nol hingga Mahir",
        "penulis" => "petanikode"
    ],
    [
        "judul" => "Membuat Aplikasi Web dengan PHP",
        "penulis" => "petanikode"
    ]
];

// menampilkan array
foreach($artikel as $post){
    echo "<h2>".$post["judul"]."</h2>";
    echo "<p>".$post["penulis"]."<p>";
    echo "<hr>";
}

Hasilnya:

Array Multidimensi dan Asosiatif

Apa Selanjutnya?

Kita sudah belajar 7 hal dasar yang harus diketahui tentang array di PHP. Selanjutnya silahkan pelajari tentang fungsi atau latihan array lebih banyak lagi, supaya lebih paham.

Kalau ada yang belum jelas, jangan sungkan untuk bertanya…