Diziler
Diziler, PHP programlamada birden fazla değeri tek bir değişkende saklamamıza olanak sağlayan temel veri yapılarıdır. Yazılım geliştirme süreçlerinde, veri koleksiyonlarını yönetmek, listeleri işlemek ve algoritmalar oluşturmak için diziler vazgeçilmezdir. Diziler, kullanıcı kayıtları, ürün listeleri, yapılandırma ayarları veya büyük veri kümelerinin yönetimi gibi pek çok senaryoda etkin biçimde kullanılabilir.
PHP’de diziler üç temel türde kullanılır: indeksli diziler, ilişkisel (associative) diziler ve çok boyutlu diziler. İndeksli diziler sayısal anahtarlarla, ilişkisel diziler anahtar-değer çiftleriyle ve çok boyutlu diziler diğer dizileri içerecek şekilde karmaşık veri yapıları oluşturmak için kullanılır. Bu yapıların etkin kullanımı, algoritmaların optimizasyonu, veri manipülasyonu ve OOP prensiplerinin uygulanmasında kritik öneme sahiptir.
Bu eğitimde, dizilerin nasıl oluşturulacağını, elemanlarının nasıl yönetileceğini, diziler üzerinde dolaşma yöntemlerini ve PHP’nin sunduğu dahili fonksiyonlarla verilerin nasıl filtrelenip sıralanacağını öğreneceksiniz. Ayrıca, iyi uygulamalar, hata yönetimi ve bellek optimizasyonu konularına dikkat ederek, dizilerle güvenli ve verimli PHP projeleri geliştirme becerisi kazanacaksınız.
Temel Örnek
php<?php
// Basit bir indeksli dizi oluşturma
$ogrenciler = ["Ahmet", "Mehmet", "Ayşe", "Fatma"];
// Diziye yeni bir eleman ekleme
$ogrenciler[] = "Elif";
// foreach ile diziyi dolaşma
foreach ($ogrenciler as $index => $isim) {
echo "Öğrenci #" . ($index + 1) . ": " . $isim . PHP_EOL;
}
// Toplam eleman sayısını gösterme
echo "Toplam öğrenci sayısı: " . count($ogrenciler) . PHP_EOL;
?>
Bu örnekte, $ogrenciler isimli bir indeksli dizi oluşturulmuştur. $ogrenciler[] = "Elif"; satırı ile dizinin sonuna yeni bir eleman eklenmiştir. foreach döngüsü, dizideki tüm elemanları dolaşmak için kullanılmıştır; bu döngü, hem eleman değerini hem de indeksini elde etmeyi sağlar.
count() fonksiyonu ile dizideki toplam eleman sayısı bulunur, bu sayede döngülerde veya doğrulama işlemlerinde kullanmak mümkündür. Bu temel örnek, PHP dizilerinin kullanımı, döngü mantığı ve fonksiyonların entegrasyonunu gösterir ve gerçek dünyadaki projelerde uygulanabilir bir yapı sunar.
Pratik Örnek
php<?php
// Çok boyutlu dizi ile öğrenci bilgileri
$ogrenciler = [
["isim" => "Ahmet", "yas" => 20, "notlar" => [90, 85, 88]],
["isim" => "Mehmet", "yas" => 22, "notlar" => [78, 82, 80]],
["isim" => "Ayşe", "yas" => 21, "notlar" => [95, 89, 92]],
];
// Not ortalamasını hesaplayan fonksiyon
function ortalamaHesapla($notlar) {
return array_sum($notlar) / count($notlar);
}
// Diziyi dolaşarak her öğrencinin ortalamasını gösterme
foreach ($ogrenciler as $ogrenci) {
$ortalama = ortalamaHesapla($ogrenci["notlar"]);
echo $ogrenci["isim"] . " (Yaş " . $ogrenci["yas"] . ") Ortalama: " . $ortalama . PHP_EOL;
}
// Yeni öğrenci eklerken hata yönetimi
try {
$yeniOgrenci = ["isim" => "Fatma", "yas" => 23, "notlar" => [85, 87, 90]];
if (!isset($yeniOgrenci["isim"]) || !isset($yeniOgrenci["notlar"])) {
throw new Exception("Öğrenci verisi eksik");
}
$ogrenciler[] = $yeniOgrenci;
} catch (Exception $e) {
echo "Hata: " . $e->getMessage() . PHP_EOL;
}
?>
Bu örnekte, her öğrencinin isim, yaş ve notlarını içeren çok boyutlu bir dizi kullanılmıştır. ortalamaHesapla() fonksiyonu, array_sum() ve count() fonksiyonları ile notların ortalamasını hesaplar. foreach döngüsü ile diziyi dolaşarak her öğrencinin bilgilerini ve not ortalamasını ekrana yazdırır.
try/catch bloğu ile yeni öğrenci eklenirken veri eksikliği kontrol edilmiş ve olası hatalar güvenli şekilde yönetilmiştir. Bu yaklaşım, gerçek dünya PHP projelerinde veri doğrulama, hata yönetimi ve performans optimizasyonu için iyi bir örnek sunar.
PHP dizilerinde en iyi uygulamalar; modern sözdizimini kullanmak, foreach ile dizileri dolaşmak ve PHP’nin dahili fonksiyonlarını kullanarak işlemleri optimize etmektir. Yaygın hatalar arasında eksik veri eklemek, gereksiz döngüler kullanmak veya çok boyutlu dizilerde yanlış erişim yapmak bulunur. var_dump() veya print_r() ile dizilerin içeriğini kontrol etmek, hata ayıklamada faydalıdır. Performansı artırmak için gereksiz kopyalamalardan kaçınmak ve kullanılmayan dizileri unset() ile bellekten temizlemek önemlidir. Güvenlik açısından kullanıcı verilerini dizilere eklemeden önce doğrulamak kritik bir uygulamadır.
📊 Referans Tablosu
PHP Element/Concept | Description | Usage Example |
---|---|---|
İndeksli Dizi | Sayısal anahtarlara sahip diziler | $arr = [1,2,3]; |
İlişkisel Dizi | Anahtar-değer çiftleri içeren diziler | $ogrenci = ["isim" => "Ahmet", "yas" => 20]; |
Çok Boyutlu Dizi | Başka diziler içeren diziler | $matris = [[1,2],[3,4]]; |
array_push | Dizinin sonuna eleman ekler | array_push($arr, 4); |
count | Dizideki toplam eleman sayısını döndürür | $len = count($arr); |
array_sum | Dizideki sayıları toplar | $toplam = array_sum([1,2,3]); |
Diziler PHP’de veri yönetimi ve algoritma uygulamaları için kritik öneme sahiptir. Bu eğitimde dizilerin temelleri, çok boyutlu kullanımı, fonksiyon entegrasyonu ve hata yönetimi konularını gördük. Bir sonraki adım olarak, dizilerle birlikte dizinleme, filtreleme ve sıralama fonksiyonlarını öğrenmek faydalı olacaktır. Dizileri gerçek PHP projelerinde etkin kullanarak uygulamaları optimize edebilir ve hatasız veri yönetimi sağlayabilirsiniz. Kaynaklar arasında PHP resmi dokümantasyonu ve ileri seviye PHP kitapları yer almaktadır.
🧠 Bilginizi Test Edin
Bilginizi Test Edin
Bu interaktif sınavla kendini test et ve konuyu ne kadar iyi anladığını gör
📝 Talimatlar
- Her soruyu dikkatle okuyun
- Her soru için en iyi cevabı seçin
- Quiz'i istediğiniz kadar tekrar alabilirsiniz
- İlerlemeniz üstte gösterilecek