Fungsi Anonim

Fungsi anonim, juga dikenal sebagai closure, adalah fungsi dalam PHP yang tidak memiliki nama spesifik dan bisa dibuat secara dinamis saat runtime. Berikut adalah beberapa hal penting tentang fungsi anonim di PHP:

1. Mendefinisikan Fungsi Anonim

Fungsi anonim didefinisikan menggunakan kata kunci function tanpa menentukan nama. Sebagai gantinya, mereka diassign ke variabel atau digunakan langsung dimana mereka diperlukan.

Contoh:

$add = function($a, $b) {
    return $a + $b;
};

Dalam contoh ini:

2. Penggunaan Fungsi Anonim

Fungsi anonim dapat digunakan dalam beberapa konteks:

a. Di-assign ke Variabel

$add = function($a, $b) {
    return $a + $b;
};

echo $add(3, 5); // Output: 8

b. Dilewatkan sebagai Argumen ke Fungsi Lain

$numbers = [1, 2, 3, 4, 5];

// Menggunakan array_map dengan fungsi anonim
$squared = array_map(function($num) {
    return $num * $num;
}, $numbers);

print_r($squared); // Output: Array ( [0] => 1, [1] => 4, [2] => 9, [3] => 16, [4] => 25 )

c. Dikembalikan dari Fungsi Lain

function getMultiplier($factor) {
    return function($number) use ($factor) {
        return $number * $factor;
    };
}

$double = getMultiplier(2);
echo $double(5); // Output: 10

3. Lingkup dan Closure

Fungsi anonim dapat menangkap variabel dari lingkungan sekitarnya melalui kata kunci use. Hal ini memungkinkan mereka untuk mempertahankan nilai-nilai variabel tersebut bahkan setelah fungsi utama selesai dieksekusi.

function outerFunction($x) {
    return function($y) use ($x) {
        return $x * $y;
    };
}

$multiplier = outerFunction(10);
echo $multiplier(5); // Output: 50

Pada contoh ini, $multiplier menangkap nilai $x (yang bernilai 10) dari outerFunction.

4. Penggunaan

5. Batasan

Fungsi anonim memberikan fleksibilitas dan kemudahan dalam pemrograman PHP, terutama dalam situasi di mana fungsi kecil yang hanya diperlukan sekali tanpa harus mengotori namespace fungsi global.


Revision #1
Created 13 December 2024 13:54:20 by Admin
Updated 13 December 2024 13:55:10 by Admin