2011-08-23 3 views
0

Je vous demande conseil. je lutte avec des interactions séance/objet ....Php Session Interaction avec l'objet

<?php 
class ShoppingCart 
{ 

    public $products 

    public function __construct($session) { 
     $this->products = $session['products']; 
    } 

    public addProduct($id) { 
     $this->products[] = new Product($id); 
     $_SESSION['products'] = $this->products; 
    } 

} 

session_start(); 
$shoppingCart = new ShoppingCart($_SESSION); 
$shoppingCart->addProduct(1); 
?> 

Comment voulez-vous écrire un code similaire? C'est seulement le talon mais je n'aime pas ma méthode addProduct et tout ce code en général. S'il vous plaît ne soyez pas critique et aidez-moi à l'améliorer. Peut-être y a-t-il des modèles de conception ou des exemples d'une telle interaction?

Répondre

1
class ShoppingCart { 

    private $products = array(); 

    public function __construct() { 
     if (isset($_SESSION['products'])) { 
      $this->products = &$_SESSION['products']; 
     } 
    } 

    public addProduct($id) { 
     $this->products[] = new Product($id); 
    } 
} 
+0

J'aime ça! Il simplifie et supprime mon problème avec la propriété d'objet/division de session. Merci. – greg606

+0

Upvote et marque comme le meilleur. :) –