PHP 8 ile bir ürün listesi oluşturmak, ürünleri depolamak ve görüntülemek için etkili bir yöntemdir. Bu işlem, bir ürün sınıfı (örneğin, önceki yanıtta oluşturduğumuz Product
sınıfı) ile birlikte bir ürün koleksiyonu (örneğin, bir dizi veya bir sınıf kullanarak) oluşturmayı içerir. Aşağıda, bir ürün listesi oluşturma ve yönetme süreci detaylandırılmıştır.
1. Ürün Sınıfı
Öncelikle, daha önce tanımladığımız Product
sınıfını kullanacağız. Eğer henüz oluşturmadıysanız, işte sınıfın kodu:
<?php
class Product {
private $id;
private $name;
private $price;
private $stock;
// Constructor
public
function __construct(
$id, $name, $price, $stock
) {
$this->id = $id;
$this->name = $name;
$this->price = $price;
$this->stock = $stock;
}
// Getter yöntemleri
public
function getId(
) {
return $this->id;
}
public
function getName(
) {
return $this->name;
}
public
function getPrice(
) {
return $this->price;
}
public
function getStock(
) {
return $this->stock;
}
// Ürün bilgilerini görüntüleme
public
function displayProduct(
) {
return "Ürün ID: {$this->id}, Ad: {$this->name}, Fiyat: {$this->price} TL, Stok: {$this->stock}";
}
}
?>
2. Ürün Listesi Sınıfı
Bir ürün listesini yönetmek için ProductList
adında yeni bir sınıf tanımlayabiliriz. Bu sınıf, ürünleri eklemek, silmek ve görüntülemek için gerekli yöntemleri içerecektir.
<?php
class ProductList {
private $products = [];
// Ürün ekleme
public
function addProduct(Product $product
) {
$this->products[$product->getId()] = $product;
}
// Ürün silme
public
function removeProduct(
$id
) {
if (isset($this->products[$id])) {
unset($this->products[$id]);
}
}
// Ürünleri listeleme
public
function listProducts(
) {
foreach ($this->products as $product) {
echo $product->displayProduct() . PHP_EOL;
}
}
// Belirli bir ürünü alma
public
function getProduct(
$id
) {
return $this->products[$id] ?? null;
}
}
?>
3. Ürün Listesini Kullanma
Şimdi, Product
ve ProductList
sınıflarını kullanarak bir ürün listesi oluşturabilir ve yönetebilirsiniz.
<?php
// Ürün nesneleri oluşturma
$product1 = new Product(1, 'Örnek Ürün 1', 99.99, 50);
$product2 = new Product(2, 'Örnek Ürün 2', 49.99, 30);
$product3 = new Product(3, 'Örnek Ürün 3', 29.99, 20);
// Ürün listesini oluşturma
$productList = new ProductList();
// Ürünleri listeye ekleme
$productList->addProduct($product1);
$productList->addProduct($product2);
$productList->addProduct($product3);
// Ürünleri listeleme
echo "Ürün Listesi:" . PHP_EOL;
$productList->listProducts();
// Belirli bir ürünü silme
$productList->removeProduct(2);
echo "Ürün Listesi (Ürün 2 silindi):" . PHP_EOL;
$productList->listProducts();
// Belirli bir ürünü alma
$searchedProduct = $productList->getProduct(1);
if ($searchedProduct) {
echo "Aranan Ürün: " . $searchedProduct->displayProduct() . PHP_EOL;
} else {
echo "Ürün bulunamadı." . PHP_EOL;
}
?>
Açıklamalar
-
Ürün Sınıfı:
Product
sınıfı, ürün bilgilerini tutmak için kullanılır. Ürün ID'si, adı, fiyatı ve stok miktarı gibi temel bilgileri içerir. -
Ürün Listesi Sınıfı:
ProductList
sınıfı,Product
nesnelerini tutan bir diziye sahiptir. Ürün eklemek, silmek, listelemek ve belirli bir ürünü almak için yöntemler içerir. -
Ürünleri Ekleme ve Silme: Ürün nesneleri,
addProduct
yöntemi ile listeye eklenir veremoveProduct
yöntemi ile silinir. -
Ürünleri Listeleme:
listProducts
yöntemi, mevcut ürünleri ekrana yazdırır. -
Belirli Bir Ürünü Alma:
getProduct
yöntemi, belirli bir ürün ID'sine sahip ürünü döndürür.
Sonuç
Bu örnek, PHP 8 ile bir ürün listesi oluşturma ve yönetme sürecini göstermektedir. Product
ve ProductList
sınıflarını bir arada kullanarak, ürünlerinizi etkili bir şekilde organize edebilir ve yönlendirebilirsiniz. Geliştirmek isterseniz, ürün kategorileri, indirimler veya kullanıcı yorumları gibi ek özellikler ekleyebilirsiniz.