PHP'de array_map() fonksiyonu nedir ve nasıl kullanılır?

Array_map() fonksiyonu hem ana dizi hem de bu diziyle işlem görebilecek fonksiyon alarak çalışan bir dizi işleme fonksiyonudur. Bu fonksiyon nasıl kullanılır ve örnek bir kodla gösterilebilir mi?

Array_map() fonksiyonu PHP’de sıkça kullanılan bir dizi fonksiyonudur. Bu fonksiyonun amacı bir ana dizideki tüm elemanlar için belirtilen işlemi yaparak, işlenmiş elemanları yeni bir dizide depolamak ve bu diziyi geri döndürmektir.

Fonksiyonun kullanımı şu şekildedir:

array_map(callable $callback, array $array1 [, array[] $... ])

Burada callable, işlem yapmak için kullanılacak olan fonksiyondur. Bu fonksiyon her eleman üzerinde işlem yapmak için çağrılacaktır.

$array1, işleme sokulacak olan dizidir. İsterseniz birden fazla dizi de verebilirsiniz.

Örnek bir kod kullanarak nasıl kullanıldığını gösterebiliriz:

function calculateSquare($n) {         //  Karekök alma fonksiyonumuz
    return($n * $n);
}

$array1 = array(1, 2, 3, 4, 5);        // İşlem yapacağımız dizi
$processedArray = array_map("calculateSquare", $array1);   // İşlemi uygulama

print_r($processedArray);           // İşlenmiş diziyi yazdırma

Yukarıdaki kodda, öncelikle “calculateSquare” adında bir fonksiyon tanımlıyoruz. Bu fonksiyon, kendisine verilen sayıyı kendisi ile çarparak geri döndürüyor.

Daha sonra, $array1 adında bir dizi tanımlıyoruz ve bu diziyi array_map() fonksiyonuna vererek, $processedArray adında yeni bir dizi elde ediyoruz. Bu yeni dizi, $array1 dizisindeki her elemanın kendisi ile çarpımından oluşacak şekilde işleniyor.

Son olarak, işlenmiş $processedArray dizisini ekrana yazdırıyoruz. Çıktı şu şekilde olacaktır:

Array
(
    [0] => 1
    [1] => 4
    [2] => 9
    [3] => 16
    [4] => 25
)

Bu örnekte, array_map() fonksiyonu, $array1 dizisindeki her sayı için calculateSquare() fonksiyonunu çağırarak işlem yapıyor ve işlenmiş elemanları yeni bir dizi olan $processedArray dizisinde depoluyor.