<?php

 

 

$kayitlar = [

    ['cami_adi' => 'ZELİHA ENGİN', 'kisi_sayisi' => 2],

    ['cami_adi' => 'ZELİHA ENGİN', 'kisi_sayisi' => 4],

    ['cami_adi' => 'HZ.OSMAN C.', 'kisi_sayisi' => 6],

    ['cami_adi' => 'HZ.OSMAN C.', 'kisi_sayisi' => 2],

    ['cami_adi' => 'HZ.OSMAN C.', 'kisi_sayisi' => 4]

];

 

function camiAdiTemizle($camiAdi) {

    $camiAdi = strtoupper(trim($camiAdi));

    

    // Benzer isimleri birleştirmek için

    if (strpos($camiAdi, 'ZELIHA') !== false || strpos($camiAdi, 'ENGİN') !== false) {

        return 'Zeliha Engin Camii';

    }

    if (strpos($camiAdi, 'HZ.OSMAN') !== false || strpos($camiAdi, 'OSMAN') !== false) {

        return 'Hz. Osman Camii';

    }

    

    return $camiAdi;

}

 

// Kayıtları gruplama ve toplama

function kayitlariGrupla($kayitlar) {

    $grupluKayitlar = [];

    

    foreach ($kayitlar as $kayit) {

        $temizCamiAdi = camiAdiTemizle($kayit['cami_adi']);

        

        if (isset($grupluKayitlar[$temizCamiAdi])) {

            $grupluKayitlar[$temizCamiAdi] += $kayit['kisi_sayisi'];

        } else {

            $grupluKayitlar[$temizCamiAdi] = $kayit['kisi_sayisi'];

        }

    }

    

    return $grupluKayitlar;

}

 

// Sonuçları yazdırma

function sonuclariYazdir($grupluKayitlar) {

    echo "Cami Kayıtları Toplamı:\n";

    echo str_repeat("-", 30) . "\n";

    

    foreach ($grupluKayitlar as $camiAdi => $toplamKisi) {

        printf("%-20s %d\n", $camiAdi, $toplamKisi);

    }

    

    echo str_repeat("-", 30) . "\n";

    echo "Toplam Kişi Sayısı: " . array_sum($grupluKayitlar) . "\n";

}

 

// Ana işlem

$grupluKayitlar = kayitlariGrupla($kayitlar);

sonuclariYazdir($grupluKayitlar);

 

// Veritabanından veri çekme örneği (PDO ile)

/*

function veritabanindanKayitlariCek($pdo) {

    $sql = "SELECT cami_adi, kisi_sayisi FROM kayit_tablosu";

    $stmt = $pdo->prepare($sql);

    $stmt->execute();

    return $stmt->fetchAll(PDO::FETCH_ASSOC);

}

 

 

?>