Menu
Coddy logo textTech

Anahtarlar ve Değerlerle Döngü

Coddy'nin PHP Journey'sinin Temeller bölümünün bir parçası. Ders 50 / 71.

Önceki derste, foreach ifadesinin bir dizideki her değere nasıl erişmenizi sağladığını öğrendiniz. Peki anahtara da ihtiyacınız varsa ne olacak? Bu, özellikle ilişkisel dizilerle çalışırken kullanışlıdır.

foreach döngüsünün, her yinelemede hem anahtarı hem de değeri sağlayan genişletilmiş bir sözdizimi vardır:

<?php
$person = [
    "name" => "Alice",
    "age" => 25,
    "city" => "Paris"
];

foreach ($person as $key => $value) {
    echo "$key: $value\n";
}
?>

Bu, şunu çıktılar:

name: Alice
age: 25
city: Paris

foreach ($array as $key => $value) sözdizimi, geçerli anahtarı $key değişkenine ve karşılık gelen değeri $value değişkenine atar. Bu değişkenlere istediğiniz adları verebilirsiniz; yalnızca açıklayıcı olmalarını sağlayın.

Bu, anahtarların sayısal dizinler olduğu indeksli dizilerle de çalışır:

<?php
$colors = ["red", "green", "blue"];

foreach ($colors as $index => $color) {
    echo "$index: $color\n";
}
?>

Şu çıktıyı verir:

0: red
1: green
2: blue

Hem anahtarlara hem de değerlere erişebilmek, etiketlenmiş verileri görüntülemeyi veya anahtara bağlı işlemler gerçekleştirmeyi kolaylaştırır.

challenge icon

Görev

Kolay

Bir ürünü anahtarları ve değerleriyle temsil eden bir JSON nesnesini (örneğin, {"name":"Laptop","price":"999","stock":"25"}) içeren tek bir girdi satırı okuyun.

Ürün verileri üzerinde yineleme yapmak için anahtar-değer söz dizimine sahip bir foreach döngüsü kullanın. Her anahtarı ve karşılık gelen değerini şu biçimde yazdırın:

[key] => [value]

Her anahtar-değer çiftini ayrı bir satıra yazdırın.

Örnek 1:

Girdi {"name":"Laptop","price":"999","stock":"25"} ise çıktı şöyle olmalıdır:

name => Laptop
price => 999
stock => 25

Örnek 2:

Girdi {"title":"PHP Basics","author":"John","pages":"350"} ise çıktı şöyle olmalıdır:

title => PHP Basics
author => John
pages => 350

Örnek 3:

Girdi {"city":"Paris","country":"France"} ise çıktı şöyle olmalıdır:

city => Paris
country => France

Kendin dene

<?php
// JSON girişini oku
$input = trim(fgets(STDIN));

// JSON'u ilişkisel diziye dönüştür
$product = (array)json_decode($input, true);

// TODO: Kodunuzu aşağıya yazın
// Ürün verilerini dolaşmak için key-value sözdizimi ile bir foreach döngüsü kullanın
// Her anahtarı ve değeri şu formatta yazdırın: [key] => [value]

?>
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Temeller bölümündeki tüm dersler

Kendi başına pratik yap: Online PHP derleyicisi