PHP Filter Array Berdasarkan Value-nya

Misalnya, di sini, kita punya array berikut:

<?php
$daftarPegawai = [
	[
		'name' => 'Ridho Bahru',
		'gender' => 'Male',
		'startYear' => 2019
	],
	[
		'name' => 'Lisa Wulandari',
		'gender' => 'Female',
		'startYear' => 2024
	]
];

Kemudian pakai 2 cara yang berbeda untuk melakukan filter array:

  1. Direkomendasikan: menggunakan built-in function bawaan PHP
  2. Membuat custom function untuk melakukan filter array
// Menggunakan built-in function
$daftarPegawaiStartAfter2020 = array_filter($daftarPegawai, function ($pegawai) {
	return $pegawai['startYear'] > 2020;
});
// Membuat custom function
function filterArray($arr, $fn) {
	$filtered = [];

	foreach ($arr as $item) {
		if ($fn($item)) {
			$filtered[] = $item;
		}
	}

	return $filtered;
}

$daftarPegawaiStartAfter2020 = filterArray($daftarPegawai, function ($pegawai) {
	return $pegawai['startYear'] > 2020;
});

Contoh meng-echo-kan hasil filter di atas:

<ul>
	<?php foreach ($daftarPegawaiStartAfter2020 as $pegawai) : ?>
		<li><?= $pegawai['name'] ?></li>
	<?php endforeach; ?>
</ul>