Ana Sayfa | Eğitim CD 'leri | Bilgisayar Kitapları | İletişim --->  0 212 428 23 21 Fax: 0 212 428 23 39

                                               

                                                                            İlişkili dizi (hash) değişkenler  

İlişkili dizi değişkenin dizi değişkenden farkı birbiriyle ilişkili elemanlardan oluşuyor olmasıdır. İlişkili dizi değişkenlerde iki unsur vardır: anahtar (key) ve değer (value). Bir ilişkili dizin aynı adda iki anahtara sahip olamaz ama aynı adda birden fazla değer bulunabilir. 

%iliskili_dizi = ("anahtar1" => ‘deger1’
"anahtar2" => ‘deger2’
...
...
);




İlişkili dizinlerin kullanım alanı dardır o yüzden sonraki derslerde daha çok dizi değişkenkleri (array) kullanacağız. Şimdilik ilişkili diziler hakkında kadar bilgi yeterli. 

>>Ders 05 (Splice ve Split fonksiyonları)


 

                                                              CGI/Perl Dersleri Splice ve Split Fonksiyonları 



Split fonksiyonu : 


Bir önceki derste dizi değişkenleri görmüştük. Split fonksiyonu içeriğini bildiğimiz dizi ya da tekil değişken içeriğini istediğimiz gibi kullanabilmemize olanak verir. Daha çok dosya ile yapılan işlemlerde kullanılır. Üç argümanı vardır, genelde iki argüman kullanılır.

"dizi yada tekil değişken" = split(/bölme karakteri/, bölünen değişken);

Öncelikle şöyle bir değişkenimiz olsun:

$isimler = "ali veli mustafa ismail hasan";

Şimdi bu tekil değişkeni boşluk işaretinden bölelim ve dizi değişkene atayalım :

@isim = split(/ /, $isimler);

print "$isim[0]; 

Örnek : 
#!/usr/bin/perl

# split.cgi

print "Content-type:text/html\n\n";

$dizi = "ali|21|1980|samsun|lise";

($isim, $yas, $dtarihi, $dsehri, $mezuniyet) = split (/\|/, $dizi);


print "<html><body bgcolor=\"#eeeeee\"><br>";
print "<font face=\"verdana\" size=\"2\">";
print "<b>İsim :</b> $isim<br>";
print "<b>Yaş :</b> $yas<br>";
print "<b>Doğum Tarihi :</b> $dtarihi<br>";
print "<b>Doğduğu şehir :</b> $dsehri<br>";
print "<b>Mezuniyet derecesi :</b> $mezuniyet<br>";
print "</body></html>";









Örnekte $dizi tekil değişkeninin içeriğini "|" karakterinden split() fonksiyonu yardımıyla bölüyoruz ve 4 ayrı değişkene atıyoruz. Daha sonra da bu değişkenleri teker teker ekrana yazdırıyoruz.

Splice Fonksiyonu

Splice fonksiyonunu kullanarak bir dizi değişkene eleman ekleme yada dizi değişkendeki belli bir elemanı silme işlemi yapabiliriz. Bu fonksiyonun 4 argümanı vardır: Dizi değişkenin adı, eklenecek (ya da silinecek) elemanın sıra numarası, çıkartılacak eleman sayısı, eklenecek elemanın içeriği. Kullanımı şu şekildedir: 

@dizi_degisken = (0, 1, 2, 3);

splice (@dizi_degisken, 4, 0, (4));

print "$dizi_degisken[4]";

Bu örnekte dizi değişkendeki hiç bir üyeyi atmadan listenin 4. sırasına (bu arada perl'ün saymaya sıfırdan başladığını unutmadınız umarım) "4" elemanını ekledik. Eğer isterseniz hiç bir şey eklemeden belli bir üyeyi de silebilirsiniz:

splice (@dizi_degisken, 2, 1, ());

Böylece dizideki "2" elemanı silindi. 

Splice fonksiyonu da en çok dosya işlemlerinde veritabanındaki belli bir kaydın düzenlenmesi ya da silinmesi için kullanılır. 

Örnek : 


#!/usr/bin/perl

# splice.cgi

print "Content-type:text/html\n\n";

@dizi = ("sıfır","bir","iki","üç","dört","beş");

print "<html><body>";
print "Dizinin şu anki elemanları:@dizi<br><br>";

splice(@dizi, 3, 1, (333));

print "Dizinin 3. elemanının değişmiş hali: @dizi<br><br>";

splice(@dizi, 3, 1, ());

print "Dizinin 3. elemanının silinmiş hali: @dizi<br><br>";

print "</body></html>";