Proje: Alışveriş sepeti
5 derslik alışveriş sepeti projesine genel bakış: ürünleri dizide tutup toplam hesaplayacaksın.
Proje: Alışveriş sepeti
Bu 5 derslik projede bir alışveriş sepeti yapacaksın. Her derste sepete bir parça ekleyecek, son derste çalışan tam bir uygulama elde edeceksin.
Projede daha önce öğrendiklerini kullanacaksın:
echoile çıktı yazma- değişken tanımlama
foreachile döngü- aritmetik operatörler
Bu projede ayrıca dizi (array) ile birden fazla ürünü tek bir değişkende tutmayı öğreneceksin. Hazırsan başlayalım.
Dizi ve ilişkisel dizi
Bir dizi (array), birden fazla değeri tek bir değişkende tutmanın yoludur. Boş bir dizi $cart = [] ile oluşturulur; $cart[] = ... ile sona yeni eleman eklenir.
Bir ürünün birden fazla özelliği (ad, fiyat, adet) varsa ilişkisel dizi (associative array) kullanırsın. Anahtar ve değer => işaretiyle eşleştirilir: ["name" => "Kalem", "price" => 25, "quantity" => 2]. Bir özelliğe $product["name"] biçiminde ulaşılır.
Uygulama İlk ürünü sepete ekle
Bu derste sepetin ilk parçasını yazacaksın. $cart adında boş bir dizi oluştur. İlk ürünü ["name" => "Kalem", "price" => 25, "quantity" => 2] ilişkisel dizisiyle $cart[] ile ekle. Sonra echo ile Sepet: 1 ürün yazdır; count($cart) kullan ve satır sonuna \n koy.
Örnek çözümü göster
Boş dizi [] ile, ürün ilişkisel dizi olarak $cart[] ile eklenir. count($cart) eleman sayısını verir.
Örnek çözüm:
<?php
// Sepet dizisini başlat ve ilk ürünü ekle
$cart = [];
$cart[] = ["name" => "Kalem", "price" => 25, "quantity" => 2];
echo "Sepet: " . count($cart) . " ürün\n";
Kendini test et
-
Sepet neden dizi kullanır?
- Çünkü dizi tek bir değeri saklar
- Çünkü birden fazla ürünü tek değişkende tutar
- Çünkü dizi sadece sayıları saklar
- Çünkü dizi veritabanı yerine geçer
Cevabı göster
Çünkü birden fazla ürünü tek değişkende tutar — Doğru. Bir dizi, birden fazla değeri tek bir değişkende tutar; bu yüzden sepet için uygundur.
-
Boş dizi tanımla
$cart ____;Cevabı göster
$cart = []; -
Dizi kavramlarını eşleştir
- Boş dizi
- $cart = []
- Sona eleman ekleme
- $cart[] = ...
- İlişkisel dizi
- name => value
- Dizi uzunluğu
- count($cart)