Transcript Document

Diziler PHP
Diziler


Dizileri baştan tanımlamak gerekmez.
array() fonksyonuyla oluşturulur.
–
–

$dizi[] = ‘deger’ $dizi dizi
int Count($) or sizeof() eleman sayısını gösterir
2 tip dizi vardır:
–
–
Sürekli diziler
Anahtar değerli diziler
Diziler

Numerik indexlenir:
–
$r = array (“a”, “b”, “c”);



–
$r[0] 0ıncı eleman “a”
$r[‘0’] 0ıncı eleman
$d = $r[1];
Aralık indexlenir:




$s = range(1,10);
$k = $s[1];
// k 2
$s = range(0, 100, 2);
// 0,2,4,6,8….
$alphabet = range (‘a’, ’z’) //a,b,c,d….
Diziler

<anahtar,değer> çiftleri,anahtara göre
indexlenir
–
–
–
–
–
$r = dizi( “basharf” => “a”, “maxno” => 100);
$d = $r[“basharf”]; // “a” yı gösterir
$r = array( 1 => “a”, 2 => 100);
$d = $r[1]; // “a” yı gösterir
Sadece ilk değer indexlenebilir.

$r = array( 1 => “a”, “b”, “c”); // b ikinci, c ucuncu ...
Diziye Eleman Eklemek
Dizinin en sonuna elemanı ekler
–
$list[] = ‘xxx’;
<?
$dizi=array();
$dizi[]=“Ocak”;
$dizi[]=“Subat”;
$dizi[]=“Mart”;
?>
<?
$dizi=array[];
$dizi[5]=“Mehmet”;
$dizi[‘a’]=“Ali”;
$dizi[‘k’]=“Veli”;
?>
<?
$dizi=array(
1=>Erdem,
2=>”Ali”
);
Foreach($dizi as $deger)
Echo $deger ;
?>

<?php
$ogrenciler[adi] = "Özbay";
$ogrenciler[soyadi] = "Altun";
$ogrenciler[sinav1] = "";
$ogrenciler[sinav2] = "";
$ogrenciler[not] = "";






print $ogrenciler[adi];



?>
Silmek

$a dizisini siler:
–

Unset ($a)
Diziden elemanı siler:
unset ($a[4])
– unset($a[‘pears’])
- $a = array()
–
Dizileri Birleştirmek:



Array_merge($array1, $array2) $array2 yi
$array1 e ekler
$array1 = $array1 + $array2;
$array1 += $array2;
işaretçiler





end(): işaretçi sonraki elemanı gösterir.
next(), işaretçi sonraki elemanı gösterir.
prev(): işaretçi sonraki elemanı gösterir.
reset(): işaretçi baştaki elemanı gösterir.
current():bulunduğu elemanı gösterir.
list and each



each: retrieves the next <key, value> pair from
array
Reset:moves array pointer to the beginning
list: assigns multiple values to variables
reset ($HTTP_POST_VARS);
while (list ($key, $val) = each
($HTTP_POST_VARS)) {
echo "$key => $val<br>";
for
$array = range(5, 10)
for ($i=0; $i < count($array); $i++) {
echo "$i => $array[$i]";
}
Çok Yönlü Diziler
$r = array ( array(“ali”, 12, “veli”), array(12, 23),
array(34) );
echo $r[0][1];
array_push fonksyonu
array_push() fonksyonu fonksyonun sonuna eleman ekler
 <?php

$birinci_dizi = array ( "Özbay" , "Muharrem" , "Hasan" ,
"Şahika" );

$yeni_dizi = array_push ( $birinci_dizi, "Altun" , "Taç" ,
"Civelek" , "Tabak" );






foreach ( $birinci_dizi as $ogrenci ) {
//
foreach ( $ogrenci as $anahtar => $deger ) {
print ("$ogrenci <br> ");
//
}
//
print ("<br>");
}
Dizileri Sıralamak

usort( $array, comparison-func): dizileri cmp fonksyonu
ile sıralamak
function cmp ($a, $b) {
if ($a == $b) return 0;
return ($a > $b) ? -1 : 1;
}
$a = array (3, 2, 5, 6, 1);
usort ($a, "cmp");
while (list ($key, $value) = each ($a)) {
echo "$key: $value\n";
}
Arrays: array functions


Shuffle($array): dizileri karmaşık sıralamak
Extract() fonksyonu dizideki elemanları gösterir
–
–
–

$me = array(‘first’=>’ali’, ‘last’=>’veli’);
extract($me);
print $first.’ ’.$last;
// ali veli
List() dizi için elemanları oluşturur
–
–
$date = (‘thursday’, 23, ‘october’);
List($weekday, $day, $month) = $date;
Dosyadaki bir satırı dizi içine almak
$myarray = file ("orders.txt");
while (list($myrecord) = each ($myarray)){
$fields = explode("|", $myrecord);
echo "$fields[0], $fields[1]<br>\n";
}
Explode-implode fonksyonları

Explode: string to array
–
–

// read text and assign each word to array element
$array = explode(‘ ,.’, $string);
İmplode: array to string
–
–
$string = implode(‘,’, $array);
// print to files as a string
Form için Diziler
Creating array from a form
<form action="handle_event.php" method="post">
<p>Event Name: <input type="text" name="name" size="30" /></p>
<p>Week Days:
<input type="checkbox" name="weekdays[]" value="Sunday" /> S
<input type="checkbox" name="weekdays[]" value="Monday" /> M
<input type="checkbox" name="weekdays[]" value="Tuesday" /> T
<input type="checkbox" name="weekdays[]" value="Wednesday" /> W
<input type="checkbox" name="weekdays[]" value="Thursday" /> T
<input type="checkbox" name="weekdays[]" value="Friday" /> F
<input type="checkbox" name="weekdays[]" value="Saturday" /> S
</p>
<input type="submit" name="submit" value="Add the Event!" />
</form>
Creating array from a form
if (is_array ($_POST['weekdays'])) {
foreach ($_POST['weekdays'] as $day) {
print "$day<br />\n";
}
} else {
print ‘Lütfen bir gün seçiniz!';
}