Genckolik.Net

Genckolik.Net » BİLGİSAYAR & DONANIM » Webmaster Dünyası » Programlama Dilleri » PHP icerisinde Dizilerin Kullanımı

Kontör Reklamı


PHP icerisinde Dizilerin Kullanımı

Programlama Dilleri içinde PHP icerisinde Dizilerin Kullanımı konusu , Diziler en temelinde basit birer degiskenlerdir.Bu ozel tip degiskeni digerlerinden ayiran en onemli ozellik ise degiskenin birden fazla degeri icinde saklayabilmesidir.Bu olay sehirlerin icindeki binalara,cadde ve sokaklara ...

Cevapla
Seçenekler Stil
PHP icerisinde Dizilerin Kullanımı
Alt 19-12-06, 18:01   #1 (permalink)
Yeni Genç


mp3 indir
Thumbs up PHP icerisinde Dizilerin Kullanımı

Diziler en temelinde basit birer degiskenlerdir.Bu ozel tip degiskeni digerlerinden ayiran en
onemli
ozellik ise degiskenin birden fazla degeri icinde saklayabilmesidir.Bu olay sehirlerin icindeki
binalara,cadde ve sokaklara da benzetilebilir.Nasil bir cadde veya sokaga erismek icin adres
numaralari kullaniliyorsa PHP icinde de ayni sekilde dizinin icinde yer alan degiskenin degerine
ulasmak icin boyle indeksler kullanilir...

Bir dizi degisken tanimlayalim :
PHP:

  1. <?php

  2. $arkadaslar = array("serkan","oktay","tayfun","hulya","adnan","burcu");

  3. ?>


Simdi elimizde bir dizi var ve sahip oldugu degerler sirasi ile

serkan,oktay,tayfun,hulya,adnan, ve burcu

Bu elementlere erismek icin dizi indeksleri kullanilir :

Ornegin "serkan" degerine erismek icin :

$arkadaslar[0];

kullanilabilir.Eger "tayfun" degerine erismek isteseydim :

$arkadaslar[2];

gibi bir notasyonla bunu basarabilirdik.Bu tip indeksleme islemine "sifir-tabanli-indeksleme"
denilmektedir.

Bu indeksleri kendinizde tanimlayabilirisiniz :
PHP:

  1. <?php
  2. $ulke_baskentleri = array("turkiye" => "ankara", "almanya diyari" => "berlin",
  3. "ingiltere" => "londra");
  4. ?>


Yeri geldiginde Turkiye'nin baskenti verisine ulasmak icin asagidaki gibi bir notasyon
kullanilabilir :

echo $ulke_baskentleri["turkiye"];

veya Almanya icin :
PHP:

  1. <?php
  2. echo$ulke_baskentleri["almanya diyari"];
  3. ?>


Dizilerin icinde yanlizca duz yazilar,numaralar ve diger diziler saklanabilir :

PHP:

  1. <?php
  2. // Diziyi yarat
  3. $ornek_dizi = array(
  4. "sayilar" => array("bir", 2, 3, "dort"),
  5. "kahramanlar" => array("spiderman", "superman", "kaptan kirk"),
  6. "dondurma" => array("cukulatali" => "kahverengi", "vanilyali" => "beyaz",
  7. "cilekli" => "pembe"),
  8. );
  9. // Null - 2 anahtarina sahip element yok
  10. echo$ornek_dizi[2];
  11. // "Array" - sayilar anahtari bir diziyi icinde barindiriyor
  12. echo$ornek_dizi["sayilar"];
  13. // "bir" - degeri ekrana yazdiriliyor
  14. echo$ornek_dizi["sayilar"][0];
  15. // "kaptan kirk"
  16. echo$ornek_dizi["kahramanlar"][2];
  17. // "beyaz"
  18. echo$ornek_dizi["dondurma"]["vanilyali"];
  19. ?>


Yukarida goruldugu gibi dizi yaratmak icin array () komutu kullaniliyor.Dizi icin isim secerken
PHP de kullanilan diger degiskenleere uygulanan kurallari hatirlayiniz :

Degisken ismi mutlaka bir harf karekter ile baslamali ve ardindan diger harf ve/veya numaralar
gelmelidir.

Asagidaki gibi bir notasyon ile array () fonksiyonu kullanilmadan da diziler yaratilabilir :
PHP:

  1. <?php

  2. $tatli[0] = "cukulatali kek";

  3. $tatli[1] = "tiramisu";

  4. $tatli[2] = "elmali kek";

  5. $tatli[3] = "cukulatali pasta";

  6. ?>


Yukaridaki yazim sekli ile asagidaki yazim sekli birbirinin tamamen aynisidir :
PHP:

  1. <?php

  2. $tatli[] = "cukulatali kek";

  3. $tatli[] = "tiramisu";

  4. $tatli[] = "elmali kek";

  5. $tatli[] = "cukulatali pasta";

  6. ?>


range () fonksiyonu kullanilarak otomatik olarak bazi diziler yaratilabilir :
PHP:

  1. <?php

  2. // Sonuclar ("30", "31", "32", "33", "34", "35", "36", "37", "38","39", "40")

  3. $otuzlar = range(30, 40);


  4. // Sonuclar ("i", "j", "k", "l", "m", "n", "o")

  5. $alfabe = range("i", "o");

  6. ?>


Diziye bir elemani dogrudan indeks kullanrak ekleyebilirsiniz :
PHP:

  1. <?php

  2. $tatli[4] = "visneli pasta";

  3. ?>


Simdi dizimiz soyle bir gorunume sahip olacaktir :
PHP:

  1. <?php

  2. $tatli = array("cukulatali kek", "tiramisu", " elmali kek", " cukulatali pasta", "visneli pasta");


  3. ?>


Ayni kural karekter indeksli diziler icinde gecerlidir:
PHP:

  1. <?php

  2. $filmler = array("romantik" => "Moulin Rouge", "epic" => "Gladiator",

  3. "hareket" => "Terminator");

  4. // Ayni dizi soyle de yaratilabilirdi,

  5. $filmler["romatik"] = "Moulin Rouge";

  6. $filmler["epic"] = "Gladiator";

  7. $filmler["hareket"] = "Terminator";

  8. ?>


Bu diziye bir element su sekilde eklenebilir :

PHP:

  1. <?php

  2. $filmler["korku"] = "Kuzularin Sessizligi";

  3. ?>


Dizi icideki bir elementin degeri su sekilde degistirilebilir :

PHP:

  1. <?php

  2. $tatli = array("cukulatali kek", "tiramisu", " elmali kek", " cukulatali pasta", "visneli

  3. pasta");

  4. ?>


Bu dizi icindeki "cukulatali kek" i "cukulatali-vanilyali kek" olacak sekilde degistirelim :
PHP:

  1. <?php

  2. $tatli[0] = " cukulatali-vanilyali kek";

  3. ?>


Dizinin son hali su sekilde olacaktir :

PHP:

  1. <?php

  2. $tatli = array("cukulatali-vanilyali kek", "tiramisu", " elmali kek", " cukulatali pasta",

  3. "visneli pasta");

  4. ?>


Ayni kurali karekter indeksli diziler icin de uygulayabiliriz :
PHP:

  1. <?php

  2. $filmler["hareket"] = "Rambo";

  3. ?>


Bir degiskenin dizi degisken olup olmadiginin kontrolu :
PHP:

  1. <?php

  2. $filmler = array("romantik" => "Moulin Rouge", "epic" => "Gladiator",

  3. "hareket" => "Terminator");


  4. //true degeri fonksiyonun sonucunda doner,

  5. echois_array($filmler);


  6. $filmler = "Bu degisken artik bir dizi degil";


  7. //false degeri doner,

  8. echois_array($filmler);

  9. ?>


Bir dizinin boyutunu hesaplamak :

Bir dizinin boyutu (bir dizinin icinde yer alan element sayisi da diyebiliriz) hesaplanirken
sizeof fonksiyonu kullanilir :

PHP:

  1. <?php

  2. // diziyi yarat

  3. array("cukulatali-vanilyali kek", "tiramisu", " elmali kek", " cukulatali pasta", "visneli
  4. pasta");

  5. // Fonksiyonun calismasi sonucunda 5 degeri dondurulecektir,

  6. echosizeof($tatli);


  7. // diziyi yarat

  8. $filmler = array("romantik" => "Moulin Rouge", "epic" => "Gladiator",

  9. "hareket" => "Terminator");


  10. // Ekrana 3 yazdirilir,

  11. echosizeof($filmler);


  12. ?>


array_keys ve array_values fonksiyonlarinin kullanimi :

Ornek vermek istersek,

PHP:

  1. <?php

  2. // diziyi yaratalim:

  3. $menu = array("yemek" => "dolma", "icecek" => "ayran", "tatli" =>

  4. "baklava", "garson" => "serkan", "mesaj" => "afiyet olsun");


  5. // donen sonuc array ("yemek", "icecek", "tatli", "garson", "mesaj")

  6. array_keys($menu);


  7. // donen sonuc array ("dolma", "ayran", "baklava", "serkan", "afiyet olsun")

  8. array_values($menu);

  9. ?>


in_array fonksiyonu size bir degerin o dizinin icinde olup olmadigini bulmanizda yardimci olur : PHP:
  1. <?php
  2. // dizimiz asagidaki gibi olsun,
  3. $menu = array("yemek" => "dolma", "icecek" => "ayran", "tatli" =>
  4. "baklava", "garson" => "serkan", "mesaj" => "afiyet olsun");
  5. // Ekrana true yazdirir:
  6. echoin_array("dolma",$menu)
  7. // Ekrana false yazdirir:
  8. echoin_array("pilav",$menu)
  9. ?>
PHP icesinde dizi elementlerini normal birer degisken haline getirmek icin list () ve extract () fonksiyonlari kullanilir : PHP:
  1. <?php
  2. // dizimiz asagidaki gibi olsun,
  3. $tatli = array("cukulatali kek", "tiramisu", " elmali kek", " cukulatali pasta", "visneli pasta");
  4. //Bu elementleri teker teker degiskenlere atayalim :
  5. list($a,$b,$c,$d,$e) = $tatli;
  6. //Ekrana tiramisu yazdirir,
  7. echo$b;
  8. ?>
Simdi de extract () kullanimina ornek verelim. Saniyorum list () ile arasindaki farki hemen kavrayacaksiniz : PHP:
  1. <?php
  2. // dizimiz asagidaki gibi olsun,
  3. $menu = array("yemek" => "dolma", "icecek" => "ayran", "tatli" =>
  4. "baklava", "garson" => "serkan", "mesaj" => "afiyet olsun");
  5. //Bu diziyi parcalayarak butun bilesenlerini degiskenlere atayalim
  6. extract($menu);
  7. //Ekrana dolma yazdirir
  8. echo$yemek;
  9. ?>
extract () fonksiyonu ile dizinin icindeki indeksler ile degerler tam eslesecek sekilde degiskenler yaratilir Bir dizinin sonuna bir elementi asagidaki sekilde anlatildigi gibi array_push () fonksiyonu ileeklyebilirsiniz : PHP:
  1. <?php
  2. // dizimiz asagidaki gibi olsun,
  3. $tatli = array("cukulatali kek", "tiramisu", " elmali kek", " cukulatali pasta",
  4. "visneli pasta");
  5. //Sonuna dondurma ekleyelim
  6. array_push($menu,"dondurma");
  7. Simdidizimizsoyleolacaktir:
  8. // Dizimizin son sekli
  9. $tatli = array("cukulatali kek", "tiramisu", " elmali kek", " cukulatali pasta",
  10. "visneli pasta","dondurma");
  11. ?>
Dizinin en sonundan bir element silmek icin array_pop () fonksiyonu kullanilir: PHP:
  1. <?php
  2. // Dizimiz bu sekilde olsun,
  3. $tatli = array("cukulatali kek", "tiramisu", " elmali kek", " cukulatali pasta", "visneli
  4. pasta","dondurma");
  5. //En sonundaki dondurma elementini silelim,
  6. array_pop($tatli);
  7. // Dizimizin son sekli,
  8. $tatli = array("cukulatali kek", "tiramisu", " elmali kek", " cukulatali pasta", "visneli pasta");
  9. ?>
Dizinin en basindan element silmek icin array_shift() fonksiyonu kullanilir: PHP:
  1. <?php
  2. // Diziyi yaratalim,
  3. $tatli = array("cukulatali kek", "tiramisu", " elmali kek", " cukulatali pasta", "visneli
  4. pasta");
  5. //En basindaki cukulatali kek elementini yok edelim,
  6. array_shift($tatli);
  7. // Dizimizin son sekli,
  8. $tatli = array("tiramisu", " elmali kek", " cukulatali pasta", "visneli pasta");
  9. ?>
array_unshift () fonksiyonu ile dizinin en basina elementler eklenir : PHP:
  1. <?php
  2. // Dizimizin son sekli,
  3. $tatli = array("tiramisu", " elmali kek", " cukulatali pasta", "visneli pasta");
  4. //En basina tekrar cukulatali kek eklemek istiyorum,
  5. array_unshift($tatli,"cukulatali kek");
  6. // Dizinin son sekli,
  7. $tatli = array("cukulatali kek", "tiramisu", " elmali kek", " cukulatali pasta", "visneli
  8. pasta");
  9. ?>
Uzunlugunu daha onceden sizin belirlediginiz sekilde diziler yaratmak icin (sizin girmediginiz degerler bos elemetler olarak kalirlar) array_pad () fonksiyonu kullanilir : PHP:
  1. <?php
  2. //Diziyi yaratalim
  3. $ogrenciler = array();
  4. // 4 tane Null (Bos) element iceren bir dizi haline getiriyoruz,
  5. $ogrenciler = array_pad($ogrenciler,4,"");
  6. ?>
Simdi bu fonksiyon icin biraz daha detayli ornekler verelim : Bu fonksiyonda ikinci argument ayni zamanda eklemenin yonunu de tayin etmektedir.Yani eger bu deger pozitif ise bos degerler saga dogru, negatif olunca ise sola dogru bos deger eklemeleri yapiliyor Ucuncu argumnent bos kalacak elemetlere ne deger verilecegini belirliyor... PHP:
  1. <?php
  2. //Diziyi yaratalim :
  3. $tatli = array("cukulatali kek", "tiramisu", " elmali kek", " cukulatali pasta", "visneli pasta");
  4. //Fonksiyonu uygulayalim ve dizinin boyutunu 8 e cikaralim,
  5. $tatli = $array_pad($tatli,8,"bos_tatli");
  6. //Simdi dizimiz su sekilde olacaktir,
  7. $tatli = array("cukulatali kek", "tiramisu", " elmali kek", " cukulatali pasta", "visneli
  8. pasta","bos_tatli","bos_tatli","bos_tatli");
  9. ?>
Ayni islemi bu sefer -8 parametresi ile deneyelim : PHP:
  1. <?php
  2. //Diziyi yaratalim :
  3. $tatli = array("cukulatali kek", "tiramisu", " elmali kek", " cukulatali pasta", "visneli pasta");
  4. //Fonksiyonu uygulayalim ve dizinin boyutunu 8 e cikaralim,
  5. $tatli = $array_pad($tatli,8,"bos_tatli");
  6. //Simdi dizimiz su sekilde olacaktir,
  7. $tatli = array("bos_tatli","bos_tatli","bos_tatli","cukulatali kek", "tiramisu", " elmali kek",
  8. "cukulatali pasta", "visneli pasta");
  9. ?>
Bu sefer bos degerler soldan baslayacak sekilde dizimize eklendi. Bir dizinin belirli bir kisiminin kesilip alinmasi (Array Slice) Bir dizinin sizin belirlediginiz bir bolumunu cikarip almak icin array_slice () fonksiyonu kullanilir.Bu fonksiyon daha cok duz karekter icerige sahip normal degiskenler (string veri tipindeki degiskenler) icin kullanilan substr () fonksiyonun calismasina benzemektedir: Kullanim : array_slice ($dizi_degisken,baslangic,uzunluk) baslangic ile cikarilmak istenen dizi parcasinin baslangic indeksi degeri, uzunluk ile baslangictan itibaren kac elementin cikarilacagi belirtilmektedir, Bir ornek verelim : PHP:
  1. <?php
  2. //Diziyi yaratalim,
  3. $renkler = array("kirmizi","yesil","mavi","sari");
  4. //Array_slice ile istedigimiz bir parcasini cikarip alalim
  5. $renk_parcasi = array_slice($renkler,1,2)
  6. //Dizilerimizin son sekilleri,
  7. $renkler = array("kirmizi","yesil","mavi","sari");
  8. $renk_parcasi = array("yesil","mavi");
  9. ?>
Bu fonksiyon ile negatif parametreler kullanilarak PHP'nin soldan degilde sagdan saymaya zorlandigini asagidaki ornekte gosterelim : PHP:
  1. <?php
  2. //Diziyi yaratalim,
  3. $renkler = array("kirmizi","yesil","mavi","sari");
  4. //Array_slice ile istedigimiz bir parcasini cikarip alalim
  5. $renk_parcasi = array_slice($renkler,-3,2)
  6. //Dizilerimizin son sekilleri,
  7. $renkler = array("kirmizi","yesil","mavi","sari");
  8. $renk_parcasi = array("yesil","mavi");
  9. ?>
Bu fonksiyon kullanilarak cikarilip alinan bolumler var olan dizi degiskenlere eklenebilir : Kullanim : array_slice ($dizi_degisken,baslangic,uzunluk,degistirilecek_d egerler) Ornek : PHP:
  1. <?php
  2. //Birinci dizi (hedef dizi)
  3. $renkler = array("kirmizi","yesil","mavi");
  4. //Ikinci dizi (splice ile cikarilan parcanin yerine eklenecek dizi)
  5. $kisim = array("siyah","beyaz","sari");
  6. array_splice($renkler,1,2,$kisim);
  7. //$renkler dizimizin son sekli,
  8. $renkler = array("kirmizi","siyah","beyaz","sari");
  9. ?>
Sempatik isimli üyemiz çevrimdışıdır. (Offline)   Alıntı ile Cevapla
Oyun Oyna
Cevapla

İşaretle

Seçenekler
Stil


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
Bedava Host Veren Siteler imaginary_husen Linkleriniz 16 29-03-08 22:12
Ücretsiz Web Alanı Veren Siteler Genckolik Webmaster Genel 18 06-10-07 12:39
Learning php CD's in English The_Crow Çöp Kutusu 2 16-04-07 01:06
PHP Nedir ? vadi-forum Php Scriptler 1 29-05-06 22:55
MySQL'e giriş yapalım bakalım neymiş... FiNDuKs PC Donanım & Yazılım Dökümanları 2 27-05-06 13:30



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65