PHP Array push , mevcut array’a öğeler eklediğimiz bir işlemdir. Bir dizi, tek bir ad altında birçok değer içerebilir ve değerlere bir dizin numarası ile erişebilirsiniz.

PHP’de üç tür dizi vardır.

  1. Dizinlenmiş diziler – Sayısal dizine sahip diziler .
  2. İlişkili diziler – Adlandırılmış anahtarlara sahip diziler .
  3. Çok boyutlu diziler – Bir veya daha fazla dizi içeren diziler.

PHP array_push() Fonksiyonu

PHP array_push(), bir dizinin sonuna yeni öğeler eklemek ve güncellenmiş dizi öğelerini almak için  kullanılan yerleşik bir işlevdir . array_push() yöntemi, tek bir öğeyi veya bir dizi öğeyi alır ve onu diziye ekler.

PHP array push işlevi PHP 4’te tanıtıldı  . 

Bir PHP dizisine daha fazla değer eklemek istiyorsak, dizinin sonuna bir veya daha fazla öğe ekleyen array_push() işlevini kullanmamız gerekir.

array_push() bir diziyi bir yığın olarak ele alır ve iletilen değişkenleri bir dizinin sonuna ekler. 

Kullanımı

PHP Array Push için kullanımı aşağıdaki gibidir.

array_push(array,deger1,deger2,deger3...)

Parametreler

Değeri ekleyeceğimiz bir dizi parametresi gereklidir.

Deger1 parametresi aynı zamanda belirli bir diziye ekleyecektir değer olan, gereklidir.

Deger2, değer3, vb isteğe bağlı parametrelerdir. Birden fazla değer eklemek istiyorsak, o zaman bu parametreleri geçmemiz gerekir.

Örnek

Bir örnek görelim.

deneme.php  adında bir dosya oluşturun  ve aşağıdaki kodu ekleyin.

<?php
$netflix = ['Stranger Things', 'Black Mirror', 'Bright', 'XOXO'];
$yeni = array_push($netflix, 'Shaft');
echo "<pre>";
print_r($netflix);
echo "<pre>";
echo "Değer: ".$yeni."\n";
?>
Array
(
    [0] => Stranger Things
    [1] => Black Mirror
    [2] => Bright
    [3] => XOXO
    [4] => Shaft
)
Değer: 5

Bu, Shaft  değeri $neflix  dizisine başarıyla eklediğimiz anlamına gelir .

Ayrıca  array_push() foksiyonu, dizinin uzunluğunu döndürür. Bizim durumumuzda  5’tir . PHP Dizi indeksinin 0’dan başladığını unutmayın.

Bu işlemine diziye değer ekleme de denir.

PHP dizisine birden çok değer ekleme

PHP array_push() fonksiyonu birden çok öğe alır ve tüm öğeleri diziye ekler. Eklendikleri sıraya göre eklenecektir. Sırasını değiştirmez.

<?php
$netflix = ['Stranger Things', 'Black Mirror', 'Bright', 'XOXO'];
$yeni = array_push($netflix, 'Shaft', 'Mute', 'Clinical', 'Blue Jay', 'Candy Jar');
echo "<pre>";
print_r($netflix);
echo "<pre>";
echo "Değer: ".$yeni."\n";
?>

Çıktı aşağıdaki gibidir.

Array
(
    [0] => Stranger Things
    [1] => Black Mirror
    [2] => Bright
    [3] => XOXO
    [4] => Shaft
    [5] => Mute
    [6] => Clinical
    [7] => Blue Jay
    [8] => Candy Jar
)
Değer: 9

İlişkisel Diziye değer ekleme

İlişkisel Array’a değerler eklediğimiz bir senaryoyu ele alalım.

<?php
$veri = ['ad' => 'Ahmet', 'Uyruk' => 'TR'];
$yeni = array_push($veri, 'Halilovic', 'MCA');
echo "<pre>";
print_r($veri);
echo "<pre>";
echo "Değer: ".$yeni."\n";
?>

Yukarıda  $veri değişkeni  olan  İlişkilendirilebilir Dizi, ve biz bu diziyi iki değeri ekledik.

Bu, ilk iki öğenin anahtarlarına sahip olan ilişkisel olduğu anlamına gelir. Ama 3. ve 4.’den itibaren 0’dan başlayan indeksleri var. PHP dosyasını çalıştıralım ve çıktıyı görelim.

Array
(
    [ad] => Ahmet
    [Uyruk] => TR
    [0] => Halilovic
    [1] => MCA
)
Değer: 4

PHP’de bir diziye dizi ekleme

Bir dizi içine tam bir dizi eklediğimiz ve çıktıyı gördüğümüz bir senaryo göstereceğim.

<?php
$veri = ['ad' => 'Ahmet', 'Uyruk' => 'TR'];
$hesaplar = ['Facebook', 'Instagram'];
$yeni = array_push($veri, $hesaplar);
echo "<pre>";
print_r($veri);
echo "<pre>";
echo "Değer: ".$yeni."\n";
?>

Çıktı aşağıdaki gibidir.

Array
(
    [ad] => Ahmet
    [Uyruk] => TR
    [0] => Array
        (
            [0] => Facebook
            [1] => Instagram
        )
)
Değer: 3

Yukardaki örnekte 3. eleman olarak bir dizi ekledi ve  ve  1 olan indeksine sahip.

Yani, şu anda  $veri dizisi  çok boyutlu bir dizidir.

PHP dizi toplam veri bulma

PHP’de, dizideki toplam öğe sayısı, birkaç PHP özelliği count()  ve  sizeof() tarafından hesaplanabilir.

<?php
$netflix = ['Stranger Things', 'Black Mirror', 'Bright', 'XOXO'];
echo count($netflix);
?>

Aşağıdaki çıktıya bakın.

4

Bu, $netflix dizisinde dört değer olduğu anlamına gelir. Dizinin içine daha fazla öğe eklersek, dizinin boyutu artar ve array_pop() işlevini kullanırsak dizi toplamını bir azaltır.

İlişkili Dizide anahtar ve değeri ekleme

Bir sonraki anahtarı belirlemenin bir yolu olmadığından, ilişkisel diziler için array_push() eşdeğeri yoktur. Biz kullanabilirsiniz array_push () yöntemini, ancak arzu 0 ve 1 değil anahtar değeri ile ekler. Kendi belirlediğiniz id ile eklemek isterseniz aşağıdaki örneği inceleyin.

<?php
$veri = ['ad' => 'Ahmet', 'Uyruk' => 'TR'];
$veri['yas'] = 23;
$veri['is'] = 'IT';
echo "<pre>";
print_r($veri);
echo "<pre>";
?>

Çıktı

Array
(
    [ad] => Ahmet
    [Uyruk] => TR
    [yas] => 23
    [is] => IT
)

Çıktıda bunu görebilirsiniz ve php’nin varsayılan olarak sağladığı sayısal anahtarları değil, seçtiğiniz birden çok anahtarı ekleyebiliriz.

Diziye bir değer göndermek, onun için otomatik olarak bir sayısal anahtar oluşturur. 

Dizinin başına eleman ekleme

Dizinin başına bir eleman eklemek için PHP array_unshift() işlevini kullanabilirsiniz. Elemanı dizinin 0 dizinine ekler.

<?php
$veri = ['Python', 'Javascript', 'Golang'];
array_unshift($veri, 'PHP');
echo "<pre>";
print_r($veri);
echo "<pre>";
?>

Çıktı

Array
(
    [0] => PHP
    [1] => Python
    [2] => Javascript
    [3] => Golang
)

Yeni elemanımız “ PHP ”nin indeks pozisyonu 0’a eklendiğini görebilirsiniz. 

array_unshift() işlevi, diziye yeni öğeler ekler. Yeni dizi değerleri dizinin başına eklenecektir. Bir veya istediğiniz kadar değer ekleyebilirsiniz. Sayısal olarak 0’dan başlayacak ve her yeni öğe eklendiğinde önceki eleman idsi 1 artacaktır.

PHP array_push() fonksiyon örneği bitti. Umarım yardımcı olmuştur. Sorularınızı ve yaşadığınız bir sorun varsa yorum bölümünden iletebilirsiniz.