İçeriğe geç
Php Diziler | dogrukod.com

PHP Dizileri (Array)

Dizilerin tanımı değişkene birden fazla değer atamak ve atadığın değerleri sıralayıp, çoklu verilerde rahat işlem yapmamızı sağlayan veri tipleri. Değerleri bir kategori altında toplamak için diziler idealdir. Örnek verecek olursak sadece bir $uyeler değişkeninde yüzlerce kullanıcının verilere ulaşıp değişiklikler yapabiliriz.

Dizelerin kullanımı çok basittir. Ve birçok yolu vardır.

İstersek Array() fonksiyonunu kullanarak istemezsek de fonksiyon kullanmadan dizi oluşturabiliriz.
Öncelikle Array() fonksiyon ile oluşturalım:

$sebze = array("domates", "biber", "salatalık", );
//sebze dizisine array fonksiyonu ile  3 tane değer atadık.

Aynı işlemi array fonksiyonunu kullanmadan yapalım.

$sebze[0] = "domates";
$sebze[1] = "biber";
$sebze[2] = "salatalık";

Aslında bu yöntermde dizinin nasıl sonuç verdiği ortaya çıkmış oluyor.
Array fonksiyonu ve arraysız fonksiyonsuz oluşturduğumuz dizelerde aynı işlemi yaptık.

php array, php dizi, php dizi kullanımı, php dizi tanımlama, php diziler, diziler php, php de diziler, php, php dersleri
PHP’de Diziler | dogrukod.com

Array() fonksiyonu ile oluşturduğumuz bu dizide her bir değerin anahtarı sayısal olur, yani anahtarlar 0, 1, 2, 3, … şeklinde gider. Yukarıdaki $meyveler dizisinin 0. anahtarının değeri domates 1.anahtarın değeri ise biber olur.

Array() fonksiyonu ile kendi istediğimiz gibi olacak olan diziler oluşturmak için şu yöntemi kullanırız;

$sebze = array(“bir=>domates”, “iki=>biber”, “üç=>salatalık”);

//burada anahtarı kendimiz belirtmiş olduk.

Bir de Array fonksiyonu olmadan yapalım;

$sebze['bir'] = "domates";
$sebze['iki'] ="biber";
$sebze['üç']="salatalık";
//array fonksiyonu olmadan da tanımladık.

Dizilerde bir adet anahtara ve her anahtar için bir değere ihtiyacımız var burada anahtar olan kısım ve değer alan kısmı şu şekilde gösteririz;

$dizi['anahtar'] = 'değer';

Anahtar olan kısıma ister sayı istersek de yazı girebiliriz. Sırlama için mantıklı olan sayılardır. sayı anahtarlarda daha rahat çalışabiliriz.

php array, php dizi, php dizi kullanımı, php dizi tanımlama, php diziler, diziler php, php de diziler, php, php dersleri
PHP’de Dizilerin Tanımlanması | dogrukod.com

DİZİLERİ KULLANMA

Bir dizeyi oluşturduktan sonra onu kullanıp değiştirebiliriz örnek verecek olursak;

$sebze[0] = "domates";
$sebze[1] = "biber";
echo $sebze[1];

Ekrana biber yazacaktır.

Dizileri değiştirme

Dizi değiştirmeye örnek verecek olursak;

$sebze[0] ="domates";
$sebze[0] ="kabak";
echo $sebze[0];

Ekranda kabak yazacaktır. Çünkü $sebze dizisinin 0. anahtarının değeri domates iken sonraki satırda kabak olarak değiştirdi.

Şimdi de yazılı anahtarlar ile gösterelim;

$misafir["isim"]= "özge";
$misafir["yaş"] = 21;
$misafir["il"] ="kayseri";
echo 'misafirin ismi'. $misafir["isim"].',yaşı'. $misafir["yaş"] .'

Ekrana Misafirin ismi Özge, yaşı 20, ili ise kayseri. yazar.

İç içe dizi kullanmak

Bir dizi oluşturduktan sonra sonsuza kadar daha dizi oluşturabiliriz. Yine bunu ister fonksiyon ile istersen de fonksiyon olmadan da yapabiliriz;

$yemek["meyve"] = array("elma", "armut", "portakal");
$yemek["sebze"] = array("biber", "domates", "salatalık");
 
echo 'Ben ' . $yemek["meyve"][0] . ' yedim';

Ekranda Ben meyve yedim yazar. İstediğin kadar içe içe dizi oluşturabilirsin. Bir de fonksiyon kullanmadan yapalım;

$yemek["meyve"][0] = "elma";
$yemek["meyve"][1] = "armut";
$yemek["meyve"][2] = "portakal";
 
$yemek["sebze"][0] = "biber";
$yemek["sebze"][1] = "domates";
$yemek["sebze"][2] = "salatalık";
 
echo 'Ben ' . $yemek["meyve"][0] . ' yedim';

Dizi silme

Oluşturduğumuz dizilerden birini silmek ya da tamamını yok etmek için kullandığımız unset() fonksiyonunu kullanıyoruz. Bu fonksiyonu tüm değişken tiplerini yok etmekte kullanabiliriz.

$meyveler[0] = "Elma";
$meyveler[1] = "Armut";
 
// sadece bir diziyi silmek için:
unset($meyveler[0]);
// tamamını silmek için:
unset($meyveler);

Dizinin tümünü yazdırmak

Diziyi olduğu gibi tüm içindekilerle ekrana yazdırmak istiyorsak print_r() fonksiyonunu kullanırız. Bu dizinin sahip olduğu tüm anahtarları ve değerlerini gösterir:

$renkler = array("mavi", "kırmızı", "siyah");
print_r($renkler);

Ekran çıktısı

Array
(
    [0] => mavi
    [1] => kırmızı
    [2] => siyah
)

Dizi yaptığınız bir değişkeni herhangi bir anahtar kullanmadan ekrana yansıtma fonksiyonu olan echo ile ekrana yazamıyoruz.

Çünkü dizi birden fazla değere sahip olduğu için tek başına yazdırmaya kalktığımızda “Array” şeklinde sonuç alırsın. nasıl olacağını da gösterelim;

$renkler = array("mavi", "kırmızı", "siyah");
echo $renkler;

Bir diziyi herhangi bir anahtarını belirtmeden yazdırmaya çalıştığımız için ekranda uyarı olarak yalnızca Array yazar.

Dizilerin eleman sayısını bulmak

Bir dizide kaç eleman olduğunu saymak için count() fonksiyonunu kullanıyoruz. Bir örnekleaçıklayalım;

$renkler = array("mavi", "kırmızı", "siyah");
echo count($renkler);

Ekranda 3 yazar. Çünkü $renkler dizisinin 3 elemanı var.

Dizileri sıralama

Dizileri 2 alanda sıralayabiliyoruz. Birincisi anahtara göre sıralama, diğeri ise değerlere göre sıralama.

Tüm sıralama fonksiyonlarını bir liste halinde yazalım

FonksiyonAçıklaması
sort()Değere göre küçükten büyüğe sıralar. Anahtarıyla olan ilişkisini bozar.
rsort()Değere göre büyükten küçüğe sıralar. Anahtarıyla olan ilişkisini bozar.
asort()Değere göre küçükten büyüğe sıralar. Anahtarıyla olan ilişkisini bozmaz.
arsort()Değere göre büyükten küçüğe sıralar. Anahtarıyla olan ilişkisini bozmaz.
ksort()Anahtara göre küçükten büyüğe sıralar.
krsort()Anahtara göre büyükten küçüğe sıralar.

örnek verecek olursak;

$kelimeler = array("cam", "bardak", "çanta");
sort($kelimeler);
print_r($kelimeler);

Ekran çıktısı;

Array
(
    [0] => çanta
    [1] => bardak
    [2] => cam
)

Otomatik tanımlanmış diziler

PHP kodları çalıştırıldığında değişkenlerde tanımlanır. İçinde kodun çalıştığı sayfanın konumunu, tarihi, sunucunun IP adresini, giren kişinin IP adresini ve bunun gibi daha bir çok veriyi bize ileten bazı değişkenler oluşturur. Bunlara genel olarak “Global değişkenler” denir. Tanımlanan global değişkenler dizi olarak tanımlanır ve bir değişken ile bir çok değeri bize gönderir.

$_SERVER global dizisi

Global değişkenlerin en başında $_SERVER geliyor. İçinde server verilerine ve sayfaya giren ziyaretçilerin IP adresi, browser verileri gibi değerlerine ulaşabiliyoruz. $_SERVER dizinin tüm değerlerini ele almak için print_r() ile ekrana yazdırarak ne olduğunu gösterelim:

Array
(
    [HTTP_USER_AGENT] => Ziyaretçinin browser bilgileri
    [SERVER_NAME] => Serverin adı
    [SERVER_ADDR] => Server IP adresi
    [SERVER_PORT] => Server portu
    [REMOTE_ADDR] => Ziyaretçinin IP adresi
    [DOCUMENT_ROOT] => Dosyanın ana dizini
    [SCRIPT_FILENAME] => Çalışan scriptin dizi adresi
    [REQUEST_URI] => Şu an hangi adreste olduğu
    [SCRIPT_NAME] => Çalışan dosyanın adı
    [PHP_SELF] => Burası da çalışan dosyanın adı
    [REQUEST_TIME] => Şu anki zaman
)

Dizileri nerede kullanabilirim?

Mesela örnek verecek olursak benzer türde verileri tek bir değişkene koyarak tek bir değişken ile tüm ihtiyaç duyduğun verilere ulaşabiliriz;

$mesaj["baslik"] = "Nasılsın Dünya";
$mesaj["icerik"] = "Merhaba bu örnek php de dizileri daha iyi anlamamız için ";
$mesaj["yazar"] = "Naz";
$mesaj["tarih"] = "14 Aralık 2020 Pazartesi";

$mesaj değişkeni ile bir mesajın tüm verilerini ayrı ayrı ve düzenli bir şekilde tutmuş olduk.

Tek Yorum

  1. Özge Özge

    Metin içeriğiniz özgün ve etkili tebrik ederim👏

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir