Programming Tutorial PHP 29 July 2025

7 Trik PHP Array yang Bikin Coding Lebih Mudah

7 Trik PHP Array yang Bikin Coding Lebih Mudah
Bagikan:

Pernah merasa pusing dengan array di PHP? Tenang, kamu nggak sendiri! Banyak pemula (bahkan yang sudah lama ngoding) sering terjebak di loop yang panjang atau cara gabung array yang ribet. Padahal, PHP punya segudang fungsi array yang bisa bikin hidupmu jauh lebih mudah.

Di artikel ini, kita akan bahas 7 trik array PHP yang wajib kamu tahu. Semua dijelaskan dengan bahasa santai, contoh nyata, dan tips praktis. Yuk, kita mulai perjalanan jadi master array PHP!

Mengambil Data dengan Mudah Pakai array_column()

Bayangin kamu punya daftar user seperti ini:

// Daftar user
$users = [
    ['id' => 1, 'name' => 'Alice'],
    ['id' => 2, 'name' => 'Bob'],
    ['id' => 3, 'name' => 'Charlie'],
];

// Ambil semua nama user
yang_nama = array_column($users, 'name');
// Hasil: ['Alice', 'Bob', 'Charlie']

Mau index-nya pakai ID? Bisa juga:

$namesById = array_column($users, 'name', 'id');
// Hasil: [1 => 'Alice', 2 => 'Bob', 3 => 'Charlie']

Fungsi ini bikin kode lebih rapi dan cepat, tanpa perlu foreach manual. Cocok banget buat ngolah data dari database atau API.

Tukar Posisi Key dan Value dengan array_flip()

Kadang kamu punya array kayak gini:

$roles = ['admin' => 1, 'editor' => 2, 'viewer' => 3];

Terus, kamu pengen cari nama role berdasarkan ID. Gampang:

$lookup = array_flip($roles);
// Hasil: [1 => 'admin', 2 => 'editor', 3 => 'viewer']

Tapi hati-hati, value harus unik ya. Kalau ada yang dobel, hasilnya bisa aneh.

Gabung Dua Array Jadi Satu dengan array_combine()

Misal kamu ambil data dari CSV:

$headers = ['name', 'email', 'role'];
$row = ['Alice', 'alice@example.com', 'admin'];

$user = array_combine($headers, $row);
// Hasil:
// [
//   'name' => 'Alice',
//   'email' => 'alice@example.com',
//   'role' => 'admin'
// ]

Ini kayak main lego data—tinggal pasang, langsung jadi. Sering dipakai buat parsing spreadsheet atau hasil API.

Bersihin Data dengan array_filter()

Punya array yang isinya campur aduk?

$data = ['apple', '', null, 'banana', false];
$clean = array_filter($data);
// Hasil: ['apple', 'banana']

Secara default, array_filter() buang semua nilai yang “kosong” (null, false, ‘’, 0, dll). Mau filter pakai logika sendiri? Bisa juga:

$even = array_filter([1, 2, 3, 4], fn($n) => $n % 2 === 0);
// Hasil: [1 => 2, 3 => 4]

Praktis banget buat bersihin input user atau hasil API.

Cek apakah sebuah value ada di array?

if (in_array('admin', $roles, true)) {
    // true = strict check, biar nggak ketukar tipe data
}

Mau cari key-nya?

$key = array_search('editor', $roles, true);
// Hasil: 'editor'

Selalu pakai mode strict (true) supaya hasilnya akurat dan nggak kena bug aneh.

Edit Semua Nilai di Array Bersarang dengan array_walk_recursive()

Kadang kamu punya array yang dalemnya array lagi:

$data = [
    'name' => ' Alice ',
    'contact' => [
        'email' => ' alice@example.com ',
        'phone' => ' 1234567890 ',
    ]
];

array_walk_recursive($data, function (&$value) {
    $value = trim($value);
});
// Semua string sekarang sudah rapi tanpa spasi di depan/belakang

Cocok buat bersihin data form, config, atau setting yang nested.

Gabung Array Bersarang: array_merge_recursive() vs array_replace_recursive()

PHP punya dua cara buat gabung array bersarang. Hasilnya beda banget!

$defaults = ['settings' => ['theme' => 'light', 'lang' => 'en']];
$overrides = ['settings' => ['theme' => 'dark']];

// array_merge_recursive
$result = array_merge_recursive($defaults, $overrides);
// Hasil:
// [
//   'settings' => [
//     'theme' => ['light', 'dark'],
//     'lang' => 'en'
//   ]
// ]

// array_replace_recursive
$result = array_replace_recursive($defaults, $overrides);
// Hasil:
// [
//   'settings' => [
//     'theme' => 'dark',
//     'lang' => 'en'
//   ]
// ]

array_merge_recursive() bikin value jadi array kalau key-nya sama, sedangkan array_replace_recursive() langsung timpa value lama dengan yang baru. Untuk config, biasanya lebih aman pakai array_replace_recursive().

Bonus: Spread Operator untuk Merge Array (PHP 8+)

Di PHP 8, kamu bisa merge array dengan cara yang super clean:

$defaults = ['lang' => 'en'];
$userSettings = ['theme' => 'dark'];

$settings = [...$defaults, ...$userSettings];
// Hasil: ['lang' => 'en', 'theme' => 'dark']

Sintaks ini bikin kode lebih singkat dan gampang dibaca. Cocok buat config atau parameter.

Penutup: Array, Sahabat Setia Programmer PHP

Array itu jantungnya PHP. Kalau kamu paham trik-trik di atas, kode kamu bakal:

  • Lebih bersih (nggak perlu foreach yang panjang)
  • Lebih cepat (fungsi built-in PHP sudah dioptimasi)
  • Lebih mudah dibaca (cerita kode lebih jelas)

Coba cek lagi kode PHP kamu. Siapa tahu ada yang bisa dihemat pakai trik di atas. Selamat mencoba, dan jangan takut bereksperimen!


Resource & Dokumentasi Resmi:

Struktur File Project (Contoh):

project-php-array/
├── index.php
├── config.php
└── README.md

Semua contoh sudah dites di PHP 8.3. Pastikan pakai versi terbaru untuk fitur spread operator dan performa optimal.

Tips:

  • Kalau error, cek versi PHP kamu dengan php -v
  • Untuk belajar lebih lanjut, kunjungi PHP: Arrays
  • Jangan ragu tanya di komunitas PHP Indonesia kalau mentok!