0 Üye ve 1 Ziyaretçi Konuyu İncelemekte. Aşağı İn :)
Sayfa 1
Konu: Php'de Dizi Degiskenleri  (Okunma Sayısı: 1325 Kere Okundu.)
« : Temmuz 04, 2008, 03:24:49 ÖÖ »

[B]a[R]a[N]
*
Üye No : 4
Yaş : 33
Nerden : İstanbul
Cinsiyet : Bay
Konu Sayısı : 5706
Mesaj Sayısı : 27 763
Karizma = 62877


Dizi Değişkenler

Dizi değişkenden ayrıntılı söz edebilmek için önce tipik bir dizi-değişkende neler olduğuna bakalım. Sözgelimi, verdiğiniz "PHP ile Programlama" kursundaki öğrencilerinizin listesi şöyle olabilir:
Öğrenci No Adı Soyadı Sınav-1 Sınav-2 Not
1 Özbay Altun .. .. ..
2 Muharrem Taç .. .. ..
3 Erhan Mataracı .. .. ..
4 Hasan Civelek .. .. ..
5 Şahika Tabak .. .. ..
Dizi Değişken Oluşturalım

Şimdi, PHP bize öyle bir araç vermeli ki, biz bir kerede bu listenin tümünü, her bir ögesine sanki bir değişkenin değeri imiş gibi tek-tek, veya bir kaçına birden ulaşabilmeli ve arzu ettiğimiz zaman notları doldurabilmeliyiz. Öğrenciler de yapacağımız Web sitesine girerek, kendi notlarını görebilmeli ve notlarını inceleyebilmeli. PHP'nin bu amaçla sağladığı araç, çok-boyutlu dizi-değişken oluşturma aracıdır. Ve bu araçla yukarıdaki listeyi aynen şöyle yapabiliriz. Bu kodu dizi_degiskenler01.php adıyla kaydedin:
<HTML>
<HEAD>
<TITLE>PHP'de Degiskenler</TITLE>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-9">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1254">

</HEAD>
<BODY>
<B>
<H2>
<?php
$ogrenciler = array (
array ( adi => "Özbay", soyadi => "Altun", sinav1 =>"", sinav2 =>"", not =>""),
array ( adi => "Muharrem", soyadi => "Taç", sinav1 =>"", sinav2 =>"", not =>""),
array ( adi => "Hasan", soyadi => "Civelek", sinav1 =>"", sinav2 =>"", not =>""),
array ( adi => "Şahika", soyadi => "Tabak", sinav1 =>"", sinav2 =>"", not =>""),
);
// Buraya başka kodlar girecek
print $ogrenciler[0][adi];
?>
</H2>
</B>
</BODY>
</HTML>
Programdaki "print()" komutunu sadece dizi değişkeni doğru yazıp yazmadığımızı sınamak amacıyla yazdık; bu programı Browser'da açtığınızda yazdığınız ilk ismi Browser penceresinde görüyorsanız, dizi-değişkeni doğru şekilde oluşturdunuz demektir. Burada, array() komutnu yazarken, süslü parantez değil, normal parantez kullandığımıza ve herbir elemanın değerlerinin sonunda vrigül olduğuna dikkat edir. Bir diğer önemli nokta: endeks adları bir kelimeden fazla ise bunları tırnak içine alarak belirtmektir. Örneğin:
array ( adi => "Özbay", soyadi => "Altun", "Sinav 1 Notları" =>"", "Sinav 2 Notları" =>"", "Toplam Not Ortalamasi" =>""),
Burada, daha öncekilere benzer bir şekilde adlandırılmış $ogrenciler değişkenin içeriğini array() komutu ile doldurduğumuzu görüyoruz. Array() ile böyle çok boyutlu ve içerdiği değerlerin her birinin bir "endeks adı" olan dizi-değişkene İlişkili Dizi (Associative array) de denir. Perl bilenler ise bu tür değişkenlere "Hash" dendiğini hatırlayacaklardır. İlişkili Dizi'lerin birinci satırı 0, ikinci satırı 1, üçüncü satırı 2.. diye numaralandırılır. Bu dizinin o satırındaki kaydın sıra endeksidir. Ayrıca burada "adi," "soyadi," "sinav1" .. dizi değişkenin içindeki değerlerin endeks adıdır. Yani bu değerlere atıfta bulunurken, referans yaparken veya bu değerleriekullanmak amacıyla erişirken sıra endeksi ve endeks adıyla hitabederiz. Yukarıdaki sınama amaçlı print() komutuna bakarsanız, birinci öğrencinin ismini "
[adi]" olarak çağırıyor.
Çok elemanlı ilişkili dizi oluşturmanın bir diğer yolu, yeri geldiğinde böyle bir dizi için yeni bir üye ilgili bilgileri eleman endeksi ve değerler için endeks adı belirterek şöyle bir kod yazmaktan ibarettir. dizi_degiskenler01.php dosyasında şu değişikliği yaparak, dizi_degiskenler02.php adıyla kaydedin
<?php
$ogrenciler[0][adi] = "Özbay";

$ogrenciler[0][soyadi] = "Altun";
$ogrenciler[0][sinav1] = "";
$ogrenciler[0][sinav2] = "";
$ogrenciler[0][not] = "";
// Buraya Buraya başka kodlar girecek
print $ogrenciler[0][adi];

?>
Bir dizi değişkende kaç boyut olacaksa, o kadar içiçe array() ögesi oluşturabiliriz. Buna göre tek boyutlu bir dizi değişken sadece bir array() komutu ile ve sadece değerler verilerek oluşturulabilir. Diyelim ki yukarıdaki öğrenci listemiz sadece öğrencilerin isimlerinden oluşacak. Bu durumda $ogrenciler değişkenine ilişkin satırı şöyle yazabilirdik:
$ogrenciler = array ("Özbay", "Muharrem", "Hasan", "Şahika");
PHP, böyle tek boyutlu bir dizinin örneğin birinci elemanını, "$ogrenciler[0]" adıyla bilir. Böyle bir tek-boyutlu diziyi oluşturmak için PHP bize başka bir kolaylık da sağlar: array() komutunu kullanmadan, doğruca dizinin ögelerine değer vermemiz mümkündür. Yukarıdaki programın sadece PHP bölümünü şöyle değiştirerek, dizi_degiskenler03.php adıyla kaydedin:
<?php
$ogrenciler[] = "Özbay";
$ogrenciler[] = "Muharrem";
$ogrenciler[] = "Hasan";
$ogrenciler[] = "Şahika";
// Buraya başka kodlar girecek
print $ogrenciler[0];
?>
Böyle sırayla dizi değişken oluşturur veya oluşturulmuş bir dizi değişkene ek yaparken, değişkenin sıra numarasını yazmazsak, PHP bunları kendisi sıralar. Yukarıdaki kodun da Browser penceresine "Özbay" yazdırması gerekir. Mevcut tek-boyutlu bir dizi değişkene ek yaptığımızda, be yeni değerin dizinin en altına eklenmesini istiyorsak, sıra numarası yazmamıza gerek yoktur. Mevcut değerlerden birini değiştirmek istiyorsak, o değerin sıra numarasını yazmamız gerekir. Bunu denemek için yukarıdaki kodu şöyle değiştirilim ve dizi_degiskenler04.php adıyla kaydedelim:
<?php
$ogrenciler[] = "Özbay";
$ogrenciler[] = "Muharrem";
$ogrenciler[] = "Hasan";
$ogrenciler[] = "Şahika";
// Buraya başka kodlar girecek
$ogrenciler[0] = "Emre";
$ogrenciler[15] = "Özbay";


print ("Dizideki 1'nci isim: $ogrenciler[0]
");
print ("Dizideki 2'nci isim: $ogrenciler[1]
");
print ("Dizideki 3'ünci isim: $ogrenciler[2]
");
print ("Dizideki 4'üncü isim: $ogrenciler[3]
");
print ("Dizideki 5'inci isim: $ogrenciler[4]
");
print ("Dizideki 6'ncı isim: $ogrenciler[5]
");
print ("..............
");
print ("Dizideki 15'nci isim: $ogrenciler[15]
");

?>
Bu programın Browser penceresine göndereceği sırada, birinci öğrenci ($ogrenci[0]) olarak bu kez Özbay değil Emre yazdığını göreceğiz.
Bunun sebebi, diziyi oluşturan ilk grup deyimden sonra,
$ogrenciler[0] = "Emre";
satırı ile birinci elemanın değerini değiştirmiş olduk. 15'nci elemana atama yapmakla, PHP'nin $ogrenciler dizisinde 6, 7, 8, 9,.. 14'e kadar boş elemanlar oluşturmasına sebep olduk.
Tek boyutlu dizileri de İlişkili Dizi olarak oluşturabilir yani değerlere endeks adı verebiliriz. Daha önce kaydettiğimiz dosyada şu değişikliği yapalım ve dizi_degiskenler05.php adıyla kaydedelim:
<?php
$ogrenci[adi] = "Özbay";
$ogrenci[soyadi] = "Altun";
$ogrenci[sinav1] = "";
$ogrenci[sinav2] = "";
$ogrenci[not] = "";
// Buraya başka kodlar girecek
print $ogrenci[adi];
?>
PHP, $ogrenci adlı değişkenin beş ayrı değeri olduğunu ve bunların "adi," "soyadi," "sinav1"... olduğunu biliyor. Şimdi artık istediğimiz noktada bu değişkenin istediğimiz değerine, o değerin endeks adını yazarak, çağrıda bulunabiliriz; bu değeri yeniden verebiliriz.
« Son Düzenleme: Eylül 14, 2011, 12:30:44 ÖÖ Gönderen : honey_face »

İstek & Öneri ve Şikayetlerinizi: link (@) webcanavari . net Adresine İletebilirsiniz.
WeBCaNaVaRi Botu

Bu Site Mükemmel :)

*****

Çevrimİçi Çevrimİçi

Mesajlar: 222 194


View Profile
Re: Php'de Dizi Degiskenleri
« Posted on: Nisan 20, 2024, 01:08:49 ÖS »

 
      Üye Olunuz.!
Merhaba Ziyaretçi. Öncelikle Sitemize Hoş Geldiniz. Ben WeBCaNaVaRi Botu Olarak, Siteden Daha Fazla Yararlanmanız İçin Üye Olmanızı ŞİDDETLE Öneririm. Unutmayın ki; Üyelik Ücretsizdir. :)

Giriş Yap.  Kayıt Ol.
Anahtar Kelimeler: Php'de Dizi Degiskenleri e-book, Php'de Dizi Degiskenleri programı, Php'de Dizi Degiskenleri oyunları, Php'de Dizi Degiskenleri e-kitap, Php'de Dizi Degiskenleri download, Php'de Dizi Degiskenleri hikayeleri, Php'de Dizi Degiskenleri resimleri, Php'de Dizi Degiskenleri haberleri, Php'de Dizi Degiskenleri yükle, Php'de Dizi Degiskenleri videosu, Php'de Dizi Degiskenleri şarkı sözleri, Php'de Dizi Degiskenleri msn, Php'de Dizi Degiskenleri hileleri, Php'de Dizi Degiskenleri scripti, Php'de Dizi Degiskenleri filmi, Php'de Dizi Degiskenleri ödevleri, Php'de Dizi Degiskenleri yemek tarifleri, Php'de Dizi Degiskenleri driverları, Php'de Dizi Degiskenleri smf, Php'de Dizi Degiskenleri gsm
Yanıtla #1
« : Aralık 13, 2008, 04:15:42 ÖS »
Avatar Yok

By.TuRuT
*
Üye No : 773
Nerden : Rize
Cinsiyet : Bay
Konu Sayısı : 19239
Mesaj Sayısı : 48 228
Karizma = 65220


emeğine sağlık

İstek & Öneri ve Şikayetlerinizi: WeBCaNaVaRi'na Üye Olmadan Link'leri ve Kod'ları Göremezsiniz.
Link'leri Görebilmek İçin. Üye Ol. veya Giriş Yap.
Adresine İletebiliriniz.
Sayfa 1
Yukarı Çık :)
Gitmek istediğiniz yer:  


Benzer Konular
Konu Başlığı Başlatan Yanıtlar Görüntü Son Mesaj
En Sevdiğiniz Dizi? « 1 2 ... 7 8 »
Anketler
MizantRopi 71 12488 Son Mesaj Aralık 02, 2012, 02:05:16 ÖÖ
Gönderen : imge34
Dizi Tv
A B C D E
Robert 3 1449 Son Mesaj Nisan 18, 2008, 07:31:21 ÖS
Gönderen : xxRuzqaRxx
Pembe Dizi
Fıkralar
By.MuraT 8 2762 Son Mesaj Nisan 01, 2009, 12:00:06 ÖS
Gönderen : ByMai
Dizi Isimleri
Geyik Muhabbeti
HaRMLeSS 6 2404 Son Mesaj Aralık 17, 2012, 02:54:08 ÖÖ
Gönderen : imge34
Dizi Başladı Saç Göründü
Televizyon & Radyo & Magazin
Mavi_Kiyamet 5 5664 Son Mesaj Haziran 23, 2014, 01:48:57 ÖS
Gönderen : portakal


Theme: WeBCaNaVaRi 2011 Copyright 2011 Simple Machines SiteMap | Arsiv | Wap | imode | Konular