<?php
class Order
{
    private 
$_id;
    private 
$_items;

    public function 
__construct($id)
    {
        
$this->_id    $id;
        
$this->_items = array();
    }

    public function 
addItem(Item $item)
    {
        
$id $item->getId();
        if (!
array_key_exists($id$this->_items)) {
            
$this->_items[$id] = array(
                
'object' => $item,
                
'amount' => 0,
            );
        }
        
$this->_items[$id]['amount']++;
    }

    public function 
getItems()
    {
        return 
$this->_items;
    }

    public function 
getId()
    {
        return 
$this->_id;
    }
}