PHP Array (Dizi) Kullanım Rehberi ve Örnekler

Programlamada algoritma kurarken, bir soruna çözüm üretirken farklı konulara ve yöntemlere başvurulur. Diziler de yine bu yöntemlerden biridir. Peki PHP’de dizi kullanımı nasıl? Diziler nedir ve nasıl kullanılır?

PHP programlama dilinde diziler, birden fazla verinin tek bir isim ile saklanmasını sağlayan yapılardır. Hemen her programlama dilinde mevcut olan dizi yapısının kullanımı ve mantığı birbirine çok benzemektedir. 

Diziler, aynı türde veya farklı türdeki verileri birlikte saklamaya yarayan yapılar olarak bilinir. Dizi içerisindeki veriler dinamik olarak ele alındığı ve değiştiği için aynı türden verileri saklamak daha mantıklı olacaktır.

PHP programlama dilinde dizi içerisinde tutulan veri ya da verilere ulaşmak için indis değerleri kullanılmaktadır. İndis değerleri, istisnalar olmadığı sürece, 0’dan başlayarak birer birer artar.

Örneğin dizide 10 eleman varsa dizinin son elemanın indisi 9 olacaktır. Bunun sebebi dizi indis başlangıç değerinin 0 olmasıdır.

PHP’de Diziler Nedir?

PHP programlama diline yeni başlayanlar veya yazılımı ilk defa PHP’de öğrenmek isteyenlerin birçoğu PHP diziler nedir sorusunu sorarak araştırmalar yapmakta ve algoritma mantığını dizileri öğrenerek de geliştirmek istemektedir.

Diziler, PHP başta olmak üzere diğer tüm programlama dillerinin hemen hepsinde kullanılan, aynı türden veya farklı türden verileri tek bir isimde bir arada toplayan yapılardır. Diziler bir küme olarak düşünülebilir.

Aynı tip verilere tek bir isim üzerinden erişmek için kullanılırlar. Dizinin tüm elemanları bellekte peş peşe saklanır ve istenildiği zaman çağrılarak kullanılırlar. 

PHP Dizi Oluşturma (Array Oluşturma)

PHP’de ihtiyaçlar doğrultusunda diziler farklı yollarla oluşturulmaktadır. PHP’de dizi oluşturmada ilk başvurulan yöntem aşağıdaki gibidir:

PHP Dizi Oluşturma Yapısı

<?php
$dizi = array('İstanbul','Ankara','İzmir','Antalya');
?>

Örnek kullanımda görüldüğü gibi PHP’de diziler tanımlanırken değişken tipinin array olarak belirtilmesi gerekir. Sonrasında ise her eleman, arasına virgül (,) konularak ayrılır ve art arda elemanlar eklenir. Yukarıdaki örnek PHP’de kısa dizi tanımlamasıdır. Örnekte yer alan İstanbul elemanı 0. indise, Ankara elemanı 1. indise, İzmir elemanı 2. indise, Antalya elemanı ise 3. indise karşılık gelir.

Kullanım 2:

<?php
$dizi = array();
$dizi[] = 'İstanbul'; // 0. indis
$dizi[] = 'Ankara'; // 1. indis
$dizi[] = 'İzmir'; // 2. indis
$dizi[] = 'Antalya'; // 3. indis
?>

Bu kullanım ise PHP’de uzun dizi tanımlamaya örnektir. Her iki kullanım türü örneğinin çıktısı ise aşağıdaki gibidir:

Çıktı:

Array
(
[0] => İstanbul
[1] => Ankara
[2] => İzmir
[3] => Antalya
)

PHP’de tanımlanmış olan dizilerdeki elemanları indisler üzerinden erişilebilir. İndis değeri ile dizideki elemana nasıl erişilmesi gerektiğiyle alakalı örnek aşağıdaki gibidir:

Örnek 1:

<?php
$dizi = array('İstanbul','Ankara','İzmir','Antalya');
echo $dizi[2]; // Ekrana İzmir yazdırılır.
?>

Yukarıdaki kullanımlar ve örnekler PHP’de tek boyutlu dizilerin kullanımını işaret etmektedir. PHP ve diğer programlama dillerinde dizi konusunun önemli adımlarından biri de çok boyutlu dizilerdir.

Çok boyutlu diziler, en az 2 olmak üzere daha fazla da boyutla tanımlanan dizilerdir. Çok boyutlu diziler matrisler olarak da tanımlanabilir.

Satır ve sütunlara ayrılmış veri kümelerine çok boyutlu diziler denir. Bu veri kümelerinin amacı bilgileri saklamak ve ihtiyaç duyulduğunda kullanmaktır. Diziler ile aynı çalışma mantığına sahip olan çok boyutlu dizilerin PHP’de kullanımı ve örnekleri aşağıdaki gibidir:

PHP Diziye Eleman Ekleme

PHP’de oluşturulan dizilere eleman eklemek için fonksiyonlar kullanılır. Dizini sonuna eleman ekleme işlemi için kullanılan fonksiyon array_push fonksiyonudur.

array_push Kullanımı

<?php
$dizi = array('İstanbul','Ankara','İzmir','Antalya');
array_push($dizi,'Adana');
print_r($dizi);
?>

Örnekte de görüldüğü üzere array_push fonksiyonuyla $dizi olarak tanımlanan dizinin sonuna ‘Adana’ eklenmiş ve print_r ile dizinin tüm verileri ekrana yazdırılmıştır.

Dizinin başına eleman ekleme için kullanılan fonksiyon ise array_unshift fonksiyonudur. Bu fonksiyona örnek ise aşağıdaki gibidir:

array_unshift Kullanımı

<?php
$dizi = array('İstanbul','Ankara','İzmir','Antalya');
array_unshift($dizi, 'Edirne');
print_r($dizi);
?>

Örnekte array_unshift fonksiyonu kullanılarak dizinin başına ‘Edirne’ elemanının getirilmesi sağlanmıştır. print_r ile dizinin değerleri, başında Edirne olacak şekilde, ekrana yazdırılmıştır.

PHP 2 Boyutlu Dizi Array Örneği

<?php
$dizi = array(
array('Türkiye', 'Almanya', 'İngiltere'),
array('İstanbul', 'Berlin', 'Londra')
);

print_r($dizi);
?>

$dizi olarak tanımlanan array içerisinde 2 boyut dizi mevcuttur. 

Örnek çıktısı ise aşağıdaki gibidir:

Array
(
[0] => Array
(
[0] => Türkiye
[1] => Almanya
[2] => İngiltere

)
[1] => Array
(
[0] => İstanbul
[1] => Berlin
[2] => Londra
)

)

Çoklu boyuta sahip olan dizilerin boyutları daha da arttırılabilir.

PHP For Döngüsü ile Dizi Yazdırma

PHP’de tanımlanan dizilerdeki elemanlara ulaşmak için for döngüsü kurulabilir ve bir döngü içerisinde dizi elemanları çağrılarak ekrana bastırılabilir.

PHP for döngüsü ile dizi yazdırma örneği aşağıdaki gibi olabilir:

<?php
$array = array('PHP','JAVA','C','Python');
$array_length = count($array);

for ($i = 0; $i < $array_length; $i++) {
echo "$i. indis:". $array[$i]. " ";
}
?>

Örnek çıktısı aşağıdaki gibidir:

0. indis:PHP 1. indis:JAVA 2. indis:C 3. indis:Python

php-for-dongusu-array-yazdirma

For döngüsü ile dizilerdeki elemanları tek tek ekrana yazdırmak yerine bir döngü içerisinde daha az kodla problemi çözmek mümkündür. Küçük çaplı veya büyük çaplı projelerde de yine dizilerdeki elemanların yazdırılması için döngüler kullanılabilir.

PHP Dizi Fonksiyonları

PHP’de tanımlanan dizilerde işlemler yapılması için çeşitli fonksiyonlar mevcuttur. Yazımızın başında dizinin başına ve sonuna eleman eklemek için tanımladığımız fonksiyonlardan farklı olarak 5 adet fonksiyona yer vereceğiz. 

Dizilerin Birleştirilmesi: array_merge

İki farklı tanımlanan dizinin birleştirilmesi için array_merge() fonksiyonu kullanılır.

Kullanım ve örnek:

<?php
$array1 = array(1,2,3,4,6);
$array2 = array('eleman1','eleman2','eleman3');
$arr = array_merge($array1,$array2);
print_r($arr);
?>

Çıktı

Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 6
[5] => eleman1
[6] => eleman2
[7] => eleman3
)

İki dizi birleştirilerek toplamda 7 indis ve 8 elemandan oluşan bir dizi gibi ekrana yazdırıldı.

Dizi Elemanlarının Tersten Yazdırılması – array_reverse

Tanımlanan dizinin elemanlarını tersten ekrana yazdırmak için array_reverse() fonksiyonu kullanılır.

Kullanım ve örnek:

<?php
$array1 = array(1,2,3,4,6);
$arr = array_reverse($array1);
print_r($arr);
?>

Çıktı

Array
(
[0] => 6
[1] => 4
[2] => 3
[3] => 2
[4] => 1
)

Dizinin Son Elemanına Ulaşmak – array_pop

PHP’de tanımlanan dizinin son elemanına ulaşmak ve ekrana yazdırmak için array_pop() fonksiyonu kullanılır.

Kullanım ve örnek

<?php
$array = array('ilk eleman', 'son eleman');
$arr = array_pop($array);
print_r($arr); // ekrana 'son eleman' yazar
?>

Dizi Elemanlarının Toplam Değerine Ulaşmakarray_sum()

Dizi içerisinde tanımlanan integer değerlerin toplamına ulaşmak için array_sum() fonksiyonu kullanılır.

Kullanım ve örnek:

<?php
$array = array(1,10,24,53,26,78,21);
$arr = array_sum($array);
print_r($arr); // Ekrana dizi değerlerinin toplamı olan 213 yazar
?>

Dizide Tekrarlanan Değerleri Göstermemek – array_unique()

Dizi içerisinde tanımlanmış birden fazla aynı değer varsa tüm değerleri tek bir değer gibi göstermek için array_unique fonksiyonu kullanılır.

Kullanım ve örnek:

<?php
$array = array('PHP','Java','JavaScript','Java','C#','C','Go','PHP');
$arr = array_unique($array);
print_r($arr);

?>

Çıktı:

Array
(
[0] => PHP
[1] => Java
[2] => JavaScript
[4] => C#
[5] => C
[6] => Go
)

PHP ve Java 2 kez dizide tanımlanmasına rağmen çıktıda bir kez alındığını görmekteyiz.

PHP Diziler Özet Bilgiler

Programlama dillerinde dizi mantığını çok fazla yerde ihtiyaç duyulmaktadır. Özellikle de veritabanı bağlantılarının olduğu, verilere anlık olarak ihtiyaç duyulduğu yerlerde dizi yapıları çok fazla kullanılır.

Dizi yapılarının PHP programlama dilinde kullanımları ve örnekleri genel olarak yazı içerisinde yer verdiğimi bilgiler gibidir.

PHP programlama dilinde dizi tanımlama, çok boyutlu dizi tanımlama ve kullanım örnekleri temel olarak bu şekildedir. Web tabanlı uygulamalar yazılırken de ihtiyaç duyulan PHP programlama dilinde verilere ulaşmak için döngüler ve diziler mantığı kurulabilir.

Ayrıca tanımlanan diziler içerisindeki elemanlara ulaşmak veya elemanları istenilen gibi çağırıp kullanmak da yine belirli dizi fonksiyonları etrafında gerçekleştirilir.

PHP’de genel olarak dizi mantığı bu şekildedir. Örnek sayısı arttırılabilir. Böylece PHP programlama dilinde algoritma geliştirirken dizi kullanımı da yaygınlaştırılabilir.

Kategoriler PHP

Yorum yapın