CodeBlanks Logo Icon CodeBlanks

array_keys() ve array_values()

PHP kursu · Başlangıç · Ders 67/116

array_keys() ile tüm anahtarları ve array_values() ile tüm değerleri almayı öğrenirsin.

array_keys() ve array_values()

Bazen bir ilişkisel dizinin yalnızca anahtarlarını ya da değerlerini istersin. array_keys() anahtarları yeni bir sayısal indeksli dizi olarak verir; array_values() değerleri aynı biçimde verir.

Örneğin $user = ["name" => "Ayşe", "age" => 28] için array_keys($user) ["name", "age"] döndürür; array_values($user) ise ["Ayşe", 28] döndürür. Özgün anahtarlar kaybolur, sıfırdan başlayan indeks verilir.

Sıralı diziyi yeniden numaralandırma

Sayısal indeksli bir diziden unset() ile öğe sildiğinde indeksler boşluklu kalır; örneğin [0 => "a", 2 => "c"] gibi. array_values() bu diziyi alıp indeksleri 0'dan başlayarak yeniden numaralandırır.

Böylece döngüye soktuğunda for ile sıralı erişim tekrar mümkün olur. İlişkisel dizilerde de anahtar-değer ilişkisini sıfırlamak için aynı işlevi kullanabilirsin.

Uygulama Sepetin anahtarlarını yazdır

$cart ilişkisel dizisini "apple" => 3, "bread" => 2, "milk" => 1 ile oluştur. Sonra array_keys($cart) ile anahtarları al ve print_r ile yazdır.

Örnek çözümü göster
Diziyi tanımla; sonra print_r(array_keys($cart)); yaz.
Örnek çözüm:
<?php
// Sepetin anahtarlarını yazdır
$cart = ["apple" => 3, "bread" => 2, "milk" => 1];
print_r(array_keys($cart));

Kendini test et

  1. array_keys($user) ne döndürür?

    $user = ["name" => "Ayşe", "age" => 28];
    • ["Ayşe", 28]
    • ["name", "age"]
    • ["name" => "Ayşe", "age" => 28]
    • [0, 1]
    Cevabı göster

    ["name", "age"] — Doğru. array_keys() yalnızca anahtarları sayısal indeksli dizi olarak verir.

  2. Değerleri al

    $prices = ["elma" => 5, "muz" => 7];
    $only_values = ____($prices);
    Cevabı göster
    $prices = ["elma" => 5, "muz" => 7];
    $only_values = array_values($prices);
  3. array_keys ile array_values arasındaki fark nedir?

    • array_keys anahtarları, array_values değerleri verir
    • array_keys değerleri, array_values anahtarları verir
    • İkisi de aynı şeyi yapar
    • array_keys sadece sayısal anahtarları verir
    Cevabı göster

    array_keys anahtarları, array_values değerleri verir — Doğru. array_keys() anahtarları, array_values() değerleri alır.

Başlangıç bölümündeki tüm dersler