arrayfungsi-bawaanmenengahMenengah3 mnt baca

Fungsi-Fungsi Array

Fungsi bawaan PHP untuk mengolah array: menambah, mencari, menggabung, dan mengurutkan.

Menambah dan menghapus

php
<?php
$buah = ["apel", "mangga"];

array_push($buah, "jeruk"); // tambah di akhir
$terakhir = array_pop($buah); // ambil dari akhir: "jeruk"

array_unshift($buah, "anggur"); // tambah di awal
$pertama = array_shift($buah);  // ambil dari awal: "anggur"

Mencari dan memeriksa

php
<?php
$buah = ["apel", "mangga", "jeruk"];

var_dump(in_array("mangga", $buah)); // true
var_dump(array_search("jeruk", $buah)); // 2 (indeksnya)

$keys = array_keys(["a" => 1, "b" => 2]); // ["a", "b"]
$vals = array_values(["a" => 1, "b" => 2]); // [1, 2]

Menggabung dan mengurutkan

php
<?php
$a = ["apel", "mangga"];
$b = ["jeruk"];
$semua = array_merge($a, $b); // ["apel", "mangga", "jeruk"]

$angka = [3, 1, 2];
sort($angka); // [1, 2, 3] (mengubah array asli!)

$murid = ["b" => "Rina", "a" => "Malik"];
asort($murid); // urut by value, kunci ikut: ["a" => "Malik", "b" => "Rina"]
ksort($murid); // urut by key

Transformasi modern: array_map dan array_filter

php
<?php
$angka = [1, 2, 3, 4];

$kuadrat = array_map(fn($n) => $n * $n, $angka);
// [1, 4, 9, 16]

$genap = array_filter($angka, fn($n) => $n % 2 == 0);
// [2, 4] (kunci asli dipertahankan: [1 => 2, 3 => 4])
$genap = array_values($genap); // rapikan ulang indeks jadi [2, 4]

Catatan teknis: Fungsi seperti sort() dan asort() mengubah array langsung (by reference) dan mengembalikan boolean, jadi $x = sort($arr) adalah kesalahan umum. Sebaliknya array_merge() dan array_map() mengembalikan array baru tanpa mengubah aslinya. Selalu cek dokumentasi: "mengubah langsung" atau "mengembalikan baru".