● Array ● ( ● [0] =>5 ● [1] =>6 ● [2] =>7 ● [3] =>napan ● ) ● Array ● ( ● [0] =>5 ● [1] =>6 ● [2] =>7 ● [3] =>napan ● ) Çıktısı =>">

Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

Dizi (array) değişkenleri. Dizi değişkenleri ● Dizi değişkenleri oluşturulan bir değişkene sınırsız sayıda veri tanımlamaya yarayan bir değişken sistemidir.

Benzer bir sunumlar


... konulu sunumlar: "Dizi (array) değişkenleri. Dizi değişkenleri ● Dizi değişkenleri oluşturulan bir değişkene sınırsız sayıda veri tanımlamaya yarayan bir değişken sistemidir."— Sunum transkripti:

1 Dizi (array) değişkenleri

2 Dizi değişkenleri ● Dizi değişkenleri oluşturulan bir değişkene sınırsız sayıda veri tanımlamaya yarayan bir değişken sistemidir. ● PHP de dizi değişkeni yaratmak:

3 Dizi değişkeni ● Array ● ( ● [0] =>5 ● [1] =>6 ● [2] =>7 ● [3] =>napan ● ) ● Array ● ( ● [0] =>5 ● [1] =>6 ● [2] =>7 ● [3] =>napan ● ) Çıktısı =>

4 Anahtarı bilmeden dizi değişkene değer atama ● Eğer sayısal bir anahtar kullanıyor ve en son hangi anahtarda kaldığımız hatırlamıyorsak boş köşeli parantez bir sonraki sayısal boş anahtarı kullanacaktır. ● Yukarıdaki örnekte anahtar 7 değeri için 2 ve 8 değeri için 3 otomatik olarak atanacaktır.

5 Dizi değişkeni ● Yukarıda yapılan tanımlamada dizi değişken anahtarı (index) sifirdan başlar. ● Yukarıdaki örnekte anahtarları biz belirledik. Dizi içerisinde 3 adet eleman vardır, anahtarları bizim tarafımızdan belirlenmiştir. ● PHP dilinde anahtarların alışılan diğer dillerdeki gibi sıralı ya da sayısal olması gerekmez. Sadece ondalık sayılar(örnek: 9.5) anahtar(index) olarak kullanılamaz.

6 Dizi değişkeni Yukarıdaki örnek hatasız bir örnektir.

7 Anahtarı bilmeden dizi değişkene değer atama ● Eğer sayısal bir anahtar kullanıyor ve en son hangi anahtarda kaldığımız hatırlamıyorsak boş köşeli parantez bir sonraki sayısal boş anahtarı kullanacaktır. ● Yukarıdaki örnekte anahtar 55 değeri için 0 olarak, otomatik olarak atanacaktır. ● array_push($dizi,55); de aynı işlemi yapan öntanımlı bir fonksiyondur.

8 Dizi değişkenini anahtarını belirterek atama 55,1=>"Emre","X"=>56); echo " "; print_r($dizi); echo " "; ?> ● Yukarıdaki script'in çıktısı: Array ( [0]=>55 [1]=>Emre [X]=>56 )

9 Çok boyutlu dizi değişkenleri ● Çok boyutlu dizi değişkeni, bir anahtar içerisinde değer yerine yeni bir dizi tanımlanması ile oluşur. ● Örneğin: ● PHP de ikinci boyutlardaki eleman sayılarınınveya anahtarlarının eşit olması zorunluluğu yoktur.

10 Çok boyutlu dizi değişkenleri ● Önceki slayttaki örneğin bir diğer yazılışı: array(3,8,77),2=>array(0=>55,1=>"Emre",5=>8)); echo " "; print_r($ikiboyut); echo " "; ?> ● print_r fonksiyonu boyut ne olursa olsun sonucu döndürür. ● Yukarıdaki script'in çıktısı: ● Array( ● [1]=>Array( ● [0]=>3 ● [1]=>8 ● [2]=>77 ● ) ● [2]=>Array( ● [0]=>55 ● [1]=>Emre ● [5]=>8 ● )

11 Dizi değişkenlerini listeleme ● Eğer dizi değişkeninin anahtarları sıralı sayı ise: ● Count() ön tanımlı fonksiyon ile değer sayısı alınır ve döngü içerisinde dizi değişken elemanlarına tek tek ulaşılabilir. ● Örneğin: {$d[$i]} "; ?> ● Çıktısı: $d[0]->a $d[1]->b $d[2]->c $d[3]->d

12 Dizi değişkenlerini listeleme ● Eğer dizi değişkeninin anahtarları bilinmiyor ise: ● Count() değer sayısını döndürür fakat bu sayı anahtar (index) olarak kullanılamaz. Bu tip durumlarda foreach döngüsü kullanılır. ● Bu döngü her dizi elemanı için otomatik olarak bir kere çalışır. ● Örneğin: ● Çıktısı: a,b,c,d, $deger) // her eleman için anahtar ve değeri döner echo $anahtar." - ".$deger.","; ?> ● Çıktısı: 0-a,1-b,2-c,3-d,

13 Dizilerde Sıralama ● PHP, dizileri sıralamak için kullanılabilen çeşitli işlevlere sahiptir ve bu belgede bunların kullanımları ele alınmıştır. ● Bu işlevler arasındaki başlıca farklar şunlardır: ● Bazı sıralama işlemleri dizilerin anahtarlarına göre yapılırken bazılarında değerlere göre yapılır: $dizi['anahtar'] = 'değer'; ● Anahtarların sayısal olarak ele alındığı durumda sıralama sonrası anahtarlarla değerleri arasındaki ilişki bozulmuş olabilir de olmayabilir de. ● Sıralama çeşitleri: abecesel, küçükten büyüğe (artan), büyükten küçüğe (azalan), sayısal, doğal, rasgele, kullanıcı tanımlı

14 Dizilerde Sıralama komutları

15 Sort ve Natsort arasındaki fark Standart sıralama Array ( [0] => img1.png [1] => img10.png [2] => img12.png [3] => img2.png ) Doğal sıralama Array ( [3] => img1.png [2] => img2.png [1] => img10.png [0] => img12.png )

16 arsort ve asort "Melek", "k"=>"Hasan", "a"=>"Tezel", "c"=>"Emre"); arsort($array); echo "AR sort "; print_r($array); asort($array); echo "A sort "; print_r($array); ?> AR Sort Array ( [a] => Tezel [z] => Melek [k] => Hasan [c] => Emre ) A Sort Array ( [c] => Emre [k] => Hasan [z] => Melek [a] => Tezel )

17 krsort ve ksort "Melek", "k"=>"Hasan", "a"=>"Tezel", "c"=>"Emre"); krsort($array); echo "AR sort "; print_r($array); ksort($array); echo "A sort "; print_r($array); ?> KR Sort Array ( [z] => Melek [k] => Hasan [c] => Emre [a] => Tezel ) k Sort Array ( [a] => Tezel [c] => Emre [k] => Hasan [z] => Melek )

18 rsort ve sort Bu örneğin çıktısındaki anahtarlara Dikkat edelim R Sort Array ( [0] => Tezel [1] => Melek [2] => Hasan [3] => Emre ) Sort Array ( [0] => Emre [1] => Hasan [2] => Melek [3] => Tezel )

19 uasort 4, 'b' => 8, 'c' => -1, 'd' => -9, 'e' => 2, 'f' => 5, 'g' => 3, 'h' => -4); print_r($dizi); // Sıralayıp sonucu basalım uasort($dizi, 'karş'); print_r($dizi); ? > Çıktı: Array ( [a] => 4 [b] => 8 [c] => -1 [d] => -9 [e] => 2 [f] => 5 [g] => 3 [h] => -4 ) Array ( [d] => -9 [h] => -4 [c] => -1 [e] => 2 [g] => 3 [a] => 4 [f] => 5 [b] => 8 )

20 Dizi değişken içerisindeki aynı verileri listelemek. ● Bu iş için kullanabileceğimiz ön tanımlı fonksiyon: array_intersect dir. Bu fonksiyon değişik sayıda arrayi parametre olarak kabul edebilir. ● Kullanılışı: ● Çıktısı Array ( [0]=>2 [4]=>7 )

21 Dizi değişken içerisindeki farklı verileri listelemek. ● Bu iş için kullanabileceğimiz ön tanımlı fonksiyon: array_diff dir. Bu fonksiyon değişik sayıda arrayi parametre olarak kabul edebilir. ● Kullanılışı: "green","red","blue","red"); $dizi2=array("b"=>"green","yellow","red"); $result=array_diff($dizi1,$dizi2); print_r($result);?> Çıktısı: Array ( [1] => blue )

22 Dizi değişken içerisinde arama yapmak ● Bu amaçla kullanabileceğimiz iki fonksiyon vardır. ● in_array : varsa doğru yoksa yanlış döndürür. ● array_search : varsa ilkinin anahtarını yoksa yanlış(false) döndürür. 'Mağusa',2=>'Lefkoşa',3=>'Girne',4=>'Lefkoşa'); echo array_search('Lefkoşa',$arr); // sonuç 2 dir. ?>

23 Form İşlemleri

24 Formlar ● Formlar, web sayfamıza gelen kullanıcılardan bilgi almamıza yarayan nesnelerdir. HTML ile oluşturulurlar, işlenmek üzere PHP sayfalarına gönderilirler. ● Formlardan gelen veriyi iki değişik yöntemle işleyebiliriz. ● GET ve POST ● Formları kodlamak için HTML kullanırız.

25 GET Metodu ● Internet sayfalarında adres satırından bilgi almak için kullanılan bir yöntemdir. ● Örneğin: index.php?cins=haberler&no=1 ? : değişken kısmının başladığını belirtir. &: değişkenleri birbirinden ayırmaya yarar. = : değişkene değerini atamak için kullanılır. Get metodu adres satırını kullanır. Aktarabileceği veri 4000 byte ile sınırlıdır. Buda dosyaları karşıdan yüklemek (upload) için uygun değildir. Adres satırı kullanıldığı için kullanıcı adı veya şifre gibi hassas verilerin transferi için kullanılmaz(POST metodu kullanılır). (IE adres satırındaki geçmişini hatırlar.)

26 GET Metodu ● Örneğin: index.php?cins=haberler&no=1 ile çağrılan sayfanın bu iki değişkenin değerlerini alabilmesi şu şekilde olur:

27 GET Metodu " method="GET"> Adınız: Soyadınız: Burada formun metodu GET ve alış yöntemi $_GET[] dir. Form elemanları takısı içerisinde bulunur. Bir sayfada birden fazla takısı bulunabilir. Formun adının z.php olduğunu ve girilen değerlerin Emre Ozen olduğunu varsayarsak. Adres çubuğundaki satır: z.php?adi=Emre&soyadi=Ozen olarak görünür.

28 POST Metodu ● Post metodunda veriler adres satırı ile değil http headers aracılığı ile gönderilir. ● Dosya aktarmaya (upload) uygun bir yöntemdir. Veri boyutu sınırı sunucu tarafında php.ini dosyası aracılığı ile kontrol edilir. ● Hassas verilerimiz için de GET metoduna nazaran daha güvenli ve uygundur.

29 POST Metodu " method="POST"> Kullanıcı adı: Şifre:

30 REQUEST komutu ● Önceki örneklerimizde $_GET['....'] ve $_POST['...'] komutları yerine (her iki metod için de) $_REQUEST[...] kullanılabilir. ● Bütün form elemanlarını ziyaret etmek için foreach döngüsünden de yararlanılablir. ● Örneğin bir önceki POST metodu örneğimizde verilerin çıktısı gezginimizde görebilmek için aşağıdaki döngü kullanılabilir: foreach ($_POST as $anahtar=>$veri) echo "$anahtar - $veri ";


"Dizi (array) değişkenleri. Dizi değişkenleri ● Dizi değişkenleri oluşturulan bir değişkene sınırsız sayıda veri tanımlamaya yarayan bir değişken sistemidir." indir ppt

Benzer bir sunumlar


Google Reklamları