Sepeti görüntüleme
foreach ile sepetteki ürünleri listeleyip gösterirsin.
Sepeti görüntüleme
Sepete ürün ekledikten sonra müşterinin sepeti görmesi gerekir. foreach döngüsü, dizinin her elemanını sırayla gezip yazdırmanın en kolay yoludur.
foreach ($cart as $product) yazdığında PHP her dönüşte $cart'ın bir sonraki elemanını $product değişkenine atar. Gövde içinde $product["name"], $product["price"] ve $product["quantity"] ile ürünün özelliklerine ulaşırsın. Her ürünü ayrı satıra yazmak için \n kullanırsın.
foreach içinde ilişkisel diziye erişim
İlişkisel dizide bir özelliğe ulaşmak için anahtarı köşeli parantezle yazarsın: $product["name"]. Bu, sade bir dizi indeksi gibi çalışır; ancak indeks sayı değil anahtardır.
Birden fazla özelliği aynı echo içinde birleştirmek için nokta (.) operatörünü kullanırsın. Örneğin echo $product["name"] . " - " . $product["price"] . " TL"; çıktısı Kalem - 25 TL olur. İstersen aritmetik de yapabilirsin: $product["price"] * $product["quantity"].
Uygulama Sepeti liste halinde yazdır
Sepetteki her ürünü foreach ile gez ve echo ile ayrı satıra yazdır. Her satır <name> - <price> TL x<quantity> biçiminde olsun (örn. Kalem - 25 TL x2). Satır sonuna \n koy. Mevcut echo satırını koru.
Örnek çözümü göster
foreach ($cart as $product) yaz; gövdede echo ile $product["name"], $product["price"] ve $product["quantity"] değerlerini noktalarla birleştir.
Örnek çözüm:
<?php
// Sepet dizisini başlat ve ilk ürünü ekle
$cart = [];
$cart[] = ["name" => "Kalem", "price" => 25, "quantity" => 2];
// array_push ile iki ürün daha ekle
array_push($cart, ["name" => "Defter", "price" => 40, "quantity" => 1], ["name" => "Silgi", "price" => 10, "quantity" => 3]);
echo "Sepet: " . count($cart) . " ürün\n";
// Sepeti foreach ile listele
foreach ($cart as $product) {
echo $product["name"] . " - " . $product["price"] . " TL x" . $product["quantity"] . "\n";
}
Kendini test et
-
foreach ($cart as $product) ne yapar?
- $cart dizisini sıralar
- $cart dizisini boşaltır
- $cart'ın her elemanını sırayla $product'a atar
- $cart'ın uzunluğunu verir
Cevabı göster
$cart'ın her elemanını sırayla $product'a atar — Doğru. foreach, dizinin her elemanını sırayla $product değişkenine atar ve gövdeyi her biri için çalıştırır.
-
foreach gövdesini tamamla
foreach ($cart as $product) { echo ____; }Cevabı göster
foreach ($cart as $product) { echo $product["name"]; } -
foreach parçalarını eşleştir
- foreach
- dizinin her elemanını gezer
- as $product
- her elemana bu adı verir
- $product["name"]
- ürünün adına ulaşır
- $product["price"]
- ürünün fiyatına ulaşır