Value bertipe apakah yang dikembalikan oleh fungsi php implode

Value bertipe apakah yang dikembalikan oleh fungsi php implode

Nurul Huda 8 February 2020


  1. Beranda
  2. Web
  3. PHP
  4. PHP Dasar
  5. PHP Dasar: Bekerja Dengan Array

Value bertipe apakah yang dikembalikan oleh fungsi php implode

  • PHP
  • PHP Dasar

Daftar Isi

    • Apa itu Array?
    • Array Terindeks
    • Array Asosiatif
    • Array Multidimensi
    • Menambahkan Item ke Dalam Array
    • Menghapus Item dari Array
    • Menggabungkan dua array atau lebih
    • Array Unpacking
    • Konversi Array Asosiatif ke Array Terindeks
    • Fungsi Explode
    • Fungsi Implode
    • Pencarian Array
    • Filter Array
    • Pemetaan Array
    • Pembahasan Selanjutnya

Selamat datang kembali di lanjutan tutorial belajar PHP Dasar. Setelah kita belajar tentang cara memanipulasi string dalam PHP, pada pertemuan kali ini kita akan membahas tentang: bekerja dengan Array di PHP.

Apa itu Array?

Kita pernah mempelajari sekilas tentang array pada pembahasan tipe data dan variabel.

Ia adalah suatu tipe data yang bersifat spesial dalam PHP, ia bisa menyimpan himpunan beberapa nilai dalam satu variabel saja.

Misalkan kita memiliki 3 buah variabel yang menyimpan data nama mahasiswa.

Dari pada kita membuat satu variabel untuk tiap nama mahasiswa seperti ini:

php

$mahasiswa1 = "Nurul Huda";
$mahasiswa2 = "Wahid Abdullah";
$mahasiswa3 = "Renza Ilhami";

Lebih baik kita simpan ketiga variabel di atas dalam satu array saja seperti berikut:

php

$listMahasiswa = [
  "Nurul Huda",
  "Wahid Abdullah",
  "Renza Ilhami"
];

Untuk menampilkan array, kita bisa menggunakan indeks. Indeks pertama dimulai dari 0 dan seterusnya.

php

echo $listMahasiswa[2] . "
"
; # Renza Ilhami echo $listMahasiswa[0] . "
"
; # Nurul Huda echo $listMahasiswa[1] . "
"
; # Wahid Abdullah

Atau kita juga bisa menggunakan perulangan semisal foreach atau for untuk menampilkan array tersebut.

php

foreach ($listMahasiswa as $mahasiswa) {
  echo $mahasiswa . "
"
; }

Array Terindeks

Di dalam PHP, ada dua jenis array: array terindeks dan array asosiatif. Array terindeks adalah array yang setiap itemnya terbedakan dengan indeks tertentu. Indeks tersebut bertipe data integer dan selalu dimulai dari angka 0.

Array $listMahasiswa yang kita buat dalam contoh di atas adalah termasuk jenis array terindeks.

Array jenis ini ada di hampir semua bahasa pemrograman, kalau pun tidak ada, maka itu hanya perbedaan nama saja, akan tetapi fungsi dan bentuknya sama saja.

Array Asosiatif

Jenis kedua dari array dalam bahasa pemrograman PHP adalah: array asosiatif.

Ia adalah suatu array di mana key atau kuncinya bukan berupa indeks integer yang dimulai dari 0, akan tetapi yang menjadi key-nya adalah suatu teks bertipe data string. Oleh karena itu ia dinamakan array asosiatif.

Berikut ini adalah contoh dari array asosiatif:

php

$mahasiswa = [
  'nama' => 'Nurul Huda',
  'domisili' => 'Surabaya',
  'jenis_kelamin' => 'Laki-laki'
];

Untuk menampilkan item yang berada di dalam array asosiatif, kita bisa melakukannya dengan memanggil key-nya. Hal ini sama persis dengan array terindeks, hanya saja jika pada array terindeks key-nya bertipe data integer, maka pada array asosisatif, key-nya bertipe data string.

Perhatikan kode program berikut:

php

echo "Nama : {$mahasiswa['nama']}
"
; echo "Domisili : {$mahasiswa['domisili']}
"
; echo "Jenis Kelamin : {$mahasiswa['jenis_kelamin']}
"
;

Array Multidimensi

Array multidimensi adalah suatu istilah untuk sebuah array, yang mana ia memiliki item berupa array yang lain. Contohnya seperti ini:

php

$histogram = [
  [1, 2, 3, 4, 5],
  [6, 7, 3, 9, 2],
  [3, 5, 1, 0, 5],
  [5, 8, 1, 3, 1]
];

Pada contoh di atas, indeks ke-0 dari array $histogram adalah suatu array. Begitu juga indeks ke-1, ke-2, dan ke-3.

Misal kita ingin menampilkan anga 0 pada array tersebut, maka kita harus memanggil array terluarnya dahulu, baru indeks dari array yang didalam.

Perhatikan kode program berikut:

php

echo $histogram[2][3]; // 0

Array multidimensi tidak mengharuskan setiap item dari array adalah suatu array dengan panjang yang sama, bahkan tidak harus semua item dari suatu array bertipe data sama. Hal itu karena array dalam PHP bisa memiliki himpunan nilai dari tipe data yang berbeda-beda.

Perhatikan contoh berikut:

php

$arrayMultidimensi = [
  "Nurul Huda",
  "Lendis Fabri",
  [1, 2, 3, 4, 5],
  [3.4, 10.93],
  true,
  false
];

Pada variabel $arrayMultidimensi di atas, kita saksikan bahwa item dari array tersebut berbeda-beda dari segi tipe data. Ada yang bertipe data string, ada yang bertipe data boolean, dan ada yang bertipe data array. Array dalam array seperti inilah yang dimaksud dengan array multidimensi.

Saya akan beri contoh yang kemungkinan besar akan anda dapati dalam kasus real: yaitu menu bertingkat tak terbatas.

Misalkan saya memiliki menu sebagai berikut:

  • Beranda
  • Berita
    • Olahraga
      • Bola
      • Bulu Tangkis
    • Politik
    • Manca Negara
  • Tentang

Saya bisa mendefinisikannya dalam suatu array multidimensi seperti berikut:

php

$menu = [
  [
    "nama" => "Beranda"
  ],
  [
    "nama" => "Berita",
    "subMenu" => [
      [
        "nama" => "Olahraga",
        "subMenu" => [
          [
            "nama" => "Bola"
          ],
          [
            "nama" => "Bulu Tangkis"
          ]
        ]
      ],
      [
        "nama" => "Politik"
      ],
      [
        "nama" => "Manca Negara"
      ]
    ]
  ],
  [
    "nama" => "Tentang"
  ],
  [
    "nama" => "Kontak"
  ],
];

Sudah punya gambaran?

Baik, sekarang tinggal satu pertanyaan: bagaimana cara menampilkan variabel $menu di atas?

Jawabannya adalah menggunakan fungsi rekursif, untuk menampilkan variabel $menu di atas bisa anda lihat pada pembahasan Fungsi Rekursif: Menampilkan Menu Bertingkat.

Menambahkan Item ke Dalam Array

Dalam banyak kasus, kita butuh menambahkan suatu nilai ke dalam array yang sebelumnya sudah pernah kita buat.

Kasus ini bisa kita selesaikan dengan mudah sekali menggunakan 2 cara:

Menggunakan fungsi array_push

Cara yang pertama adalah dengan menggunakan fungsi array_push() bawaan PHP. Fungsi ini menerima dua parameter: parameter pertama untuk array target, sedangkan parameter kedua adalah nilai yang akan dimasukkan ke dalam array.

Perhatikan contoh berikut:

php

$buah = ['Apel', 'Jeruk'];

array_push($buah, 'Nanas');

# ['Apel', 'Jeruk', 'Nanas']

Oiya, jika anda ingin menambahkan item baru di urutan pertama array, anda bisa menggunakan fungsi array_unshift sebagai ganti dari array_push.

Menggunakan sintaks kurung siku

Cara yang kedua adalah dengan menggunakan tanda kurung siku ([]) ketika menambahkan satu nilai baru ke dalam array.

Perhatikan contoh berikut:

php

$buah = ['Apel', 'Jeruk'];

# tambahkan nilai baru ke dalam array
$buah[] = 'Nanas';
$buah[] = 'Anggur'

# ['Apel', 'Jeruk', 'Nanas', 'Anggur']

Menghapus Item dari Array

Terkadang kita butuh untuk menghapus suatu nilai atau suatu item dari variabel array. Kita bisa melakukan hal tersebut dengan fungsi bawaan array yang bernama array_pop. Fungsi array_pop akan menghapus item terakhir dari suatu array.

Dari segi parameter, ia hanya menerima satu parameter saja yaitu array target yang akan dihapus item terakhirnya.

Contoh:

php

$buah = ['Apel', 'Jeruk', 'Nanas', 'Anggur'];

array_pop($buah);

var_dump($buah); # ['Apel', 'Jeruk', 'Nanas']
echo "
"
; # ia juga mengembalikan suatu nilai echo array_pop($buah) . '
'
; # Nanas var_dump($buah); # ['Apel', 'Jeruk']

Menggabungkan dua array atau lebih

Misalkan kita memiliki 2 buah array atau lebih. Lalu kita ingin menggabungkannya menjadi 1, kita bisa menggunakan fungsi bawaah PHP bernama array_merge().

Perhatikan contoh berikut:

php

$warnaTerang = ['Kuning', 'Hijau', 'Pink'];
$warnaGelap = ['Hitam', 'Abu-abu', 'Cokelat'];

# gabungkan dua array tersebut menjadi 1
$gabunganWarna = array_merge($warnaTerang, $warnaGelap);

# fungsi array_merge bisa menerima lebih dari 2 array
$semuaWarna = array_merge(
  $warnaTerang,
  $warnaGelap,
  ['Magenta', 'Cyan', 'Hijau Kelabu']
);

Array Unpacking

Array unpacking adalah fitur baru pada versi PHP 7.4. Ia memiliki fungsi yang sama dengan array_merge yaitu untuk menggabungkan suatu array dalam array lainnya.

Hanya saja kita bisa menempatkan hasil gabungan tersebut pada indeks tertentu dalam array yang lain.

Untuk mengekstrak atau unpacking array, kita bisa menggunakan sintaks ... lalu diikuti oleh nama array-nya setelah itu.

Perhatikan contoh berikut:


php
$listBuahLokal = ['mangga', 'rambutan'];
$listBuah = ['kurma', 'anggur', ...$listBuahLokal, 'kismis'];

// ['kurma', 'anggur', 'mangga', 'rambutan', 'kismis'];

Jika kita perhatikan, sintaks di atas sangat mirip dengan yang kita temukan pada bahasa pemrograman javascript.

Konversi Array Asosiatif ke Array Terindeks

Dalam kasus-kasus tertentu, kita terkadang butuh untuk mengubah array asosiatif ke dalam bentuk array terindeks.

Kita bisa melakukannya dengan perintah array_values().

Perhatikan contoh berikut:

php

# asosiatif array
$listBuah = [
  '0' => 'Anggur',
  '1' => 'Jeruk',
  '2' => 'Naga',
  '3' => 'Duku'
];

var_dump(array_values($listBuah));
// ['Anggur', 'Jeruk', 'Naga', 'Duku']

Fungsi Explode

Kita bisa memecah-mecah string lalu mengubahnya ke dalam array dengan fungsi explode.

Fungsi explode menerima 2 paramter:

  • delimiter: yaitu sebuah string yang dijadikan pemisah
  • string sasaran: yaitu sasaran string yang akan kita pecah menjadi suatu array

Misalkan kita punya string sebagai berikut:

php

$mahasiswa = "Andi Budi Deni Edwin Fajar Hendra";

Kita saksikan pada string $mahasiswa setiap kata merepresentasikan satu nama. Sehingga kita bisa dengan mudah untuk memecah string tersebut dengan menggunakan pemisah karakter spasi ( ).

Perhatikan kode program berikut:

php

var_dump(explode(" ", $mahasiswa));
// ['Andi', 'Budi', 'Deni', 'Edwin', 'Fajar', 'Hendra']

Kita juga bisa menggunakan delimiter yang tersusun dari lebih satu karakter, seperti contoh berikut:

php

$mahasiswa = "Nurul Huda, Lendis Fabri, Wahid Abdulloh";

# delimiter terdiri dari 2 karakter yaitu tanda koma dan spasi
var_dump(explode(", ", $mahasiswa));
// ['Nurul Huda', 'Lendis Fabri', 'Wahid Abdulloh']

Fungsi Implode

Fungsi implode adalah kebalikan dari fungsi explode. Tugasnya adalah untuk mengubah array menjadi suatu string tertentu.

Fungsi implode menerima 2 buah parameter:

  • glue: artinya perekat. Ia adalah string yang akan menjadi perekat antar item pada array
  • array: array sasaran yang akan diubah menjadi string

Perhatikan contoh berikut:

php

$mahasiswa = ['Huda', 'Lendis', 'Elmo'];

echo implode(" ", $mahasiswa) . "
"
; // Huda Lendis Elmo echo implode("*", $mahasiswa) . "
"
; // Huda*Lendis*Elmo echo implode(",", $mahasiswa) . "
"
; // Huda,Lendis,Elmo echo implode(", ", $mahasiswa) . "
"
; // Huda, Lendis, Elmo echo implode(" wkwk ", $mahasiswa) . "
"
; // Huda wkwk Lendis wkwk Elmo

Pencarian Array

Untuk mencari suatu data dari array, kita bisa menggunakan fungsi bawaan PHP yang bernama array_search().

Ia menerima 2 parameter wajib dan 1 parameter opsional:

  • search: nilai string yang berisi keyword pencarian
  • array: data array target
  • strict: mode pencarian. Jika true maka mode strict atau mode ketat akan diaktifkan. Dan jika parameter ini tidak didefinisikan, maka nilai default-nya adalah false.

Fungsi array_search() mengembalikan nilai false jika item yang dicari tidak ditemukan. Dan ia akan mengembalikan nilai key jika item tersebut ditemukan. Dan jika item yang ditemukan lebih dari 1, dia akan mengembalikan item pertama.

Contoh:

php

$distroLinux = ['Ubuntu', 'Arch Linux', 'Elementary OS'];

var_dump(array_search('Arch Linux', $distroLinux));
// 1

$mahasiswa = [
  'nama' => 'Lendis Fabri',
  'asal' => 'Lamongan',
  'status_pernikahan' => 'Belum menikah',
  'kewarganegaraan' => 'Indonesia'
];

var_dump(array_search('Lamongan', $mahasiswa));
// 'asal'

Fungsi array_search() bisa bekerja sama saja apakah di array terindeks mau pun di array asosiatif. Pada contoh di atas variabel $distroLinux merupakan array terindeks, sedangkan variabel $mahasiswa mereupakan array asosiatif.

Filter Array

Bayangkan kita memiliki suatu array. Lalu dari sekian banyak item pada array tersebut, kita hanya ingin mendapatkan beberapa item dengan kondisi tertentu.

Kita bisa melakukan hal tersebut dengan memanggil fungsi bawaan PHP bernama array_filter().

Fungsi ini menerima 2 parameter:

  • array: sebuah array yang menjadi target sasaran
  • callback: sebuah fungsi anonim yang mengembalikan nilai boolean

Contoh

Misalkan kita memiliki array yang menyimpan nilai ujian setiap siswa. Lalu:

  • kita ingin mengambil siapa saja yang nilainya di atas 80
  • dan siapa saja yang nilainya 30 kebawah.

Maka penyelesaian bisa dengan cara berikut:

php

$nilaiSiswa = [
  ['nama' => 'Andi', 'nilai' => 80],
  ['nama' => 'Budi', 'nilai' => 40],
  ['nama' => 'Candra', 'nilai' => 20],
  ['nama' => 'Denis', 'nilai' => 70],
  ['nama' => 'Fabrian', 'nilai' => 100],
  ['nama' => 'Gunawan', 'nilai' => 90],
  ['nama' => 'Hendra', 'nilai' => 35],
  ['nama' => 'Ian', 'nilai' => 75],
];

# nilai yang kurang dari atau sama dengan 30
$nilai30Kebawah = array_filter($nilaiSiswa, function ($item) {
  return $item['nilai'] <= 30;
});

# nilai yang lebih dari 80
$nilaiYangLebihDari80 = array_filter($nilaiSiswa, function ($item) {
  return $item['nilai'] <= 30;
});

Silakan tampilkan kedua array di atas, array $nilai30Kebawah dan juga $nilaiYangLebihDari80 untuk memeriksa apakah program kita sudah sesuai dengan yang diharapkan.

Anda juga bisa menggunakan fungsi panah untuk mempersingkat parameter ke-2:

php

# kita juga bisa menggunakan fungsi panah
$nilaiDiatas30Dan80Kebawah = array_filter(
  $nilaiSiswa, 
  fn($item) => $item['nilai'] > 30 and $item['nilai'] <= 80
);

Pemetaan array digunakan jika kita ingin memodifikasi semua item pada suatu array. Untuk melakukan hal tersebut kita bisa menggunakan fungsi bawaan PHP bernama array_map().

Untuk parameternya sama seperti fungsi array_filter(). Ia hanya menerima 2 parameter, yaitu:

  • array: sebuah array yang menjadi target sasaran
  • callback: sebuah fungsi anonim yang mengembalikan nilai boolean

Contoh

Misalkan anda mempunyai suatu array yang berisi sekumpulan nilai integer. Lalu anda ingin mengkalikan semua item array tersebut dengan angka 100.

Maka anda bisa melakukan hal tersebut sebagaimana contoh di bawah ini:

php

$array = [4, 3, 1, 5, 6];

$ratusan = array_map($array, function ($item) {
  return $item * 100;
});

// [400, 300, 100, 500, 600]

Pembahasan Selanjutnya

Kita telah mempelajari banyak hal sejauh ini. Seri tutorial belajar php dasar sudah berada di ujung dan akan segera berakhir.

Masih ada sedikit pembahasan lagi, insyallah beberapa kita akan mengambil beberapa latihan tentang fungsi matematika pada PHP, dan juga tentang fibonacci.

Setelah seri tutorial ini selesai, insyaallah kita akan mulai lagi seri belajar php selanjutnya: yaitu php tingkat menengah, lalu PHP untuk pemrograman web dinamis, pemrograman OOP pada PHP, dan MVC pada PHP.

Terima kasih banyak.

Jika anda merasa tutorial ini bermanfaat, silakan share ke kawan-kawan anda di sosial media!

Pemrograman PHP: Pemula Sampai Mahir.

Belajar pemrograman PHP dari pemula sampai mahir disertai studi kasus. Materi akan selalu di-update secara berkala.

Apa itu implode pada php?

implode() adalah sebuah fungsi PHP yang berguna untuk mengubah suatu array menjadi sebuah text atau kalimat. Dengan fungsi implode() Anda bisa menambahkan separator atau tanda pemisah pada setiap index array agar mudah dibaca.

Apa itu fungsi implode?

fungsi implode adalah fungsi php yang memiliki kegunaan untuk menggabungkan kembali string yang telah di pecahkan tadi menggunakan fungsi explode.

Apa itu implode dan Explode?

Explode dan implode merupakan sebuah fungsi yang digunakan untuk memisahkan atau menggabungkan string. String yang dipisahkan dengan explode natinya akan menjadi bentuk array yang memiliki penomroran masing-masing.

Apa yang dimaksud dengan function dalam php?

Fungsi (atau Function) di bahasa pemograman adalah kode program yang dirancang untuk menyelesaikan sebuah tugas tertentu, dan merupakan bagian dari program utama. Kita dapat membuat fungsi sendiri, atau menggunakan fungsi yang dibuat oleh programmer lain.