/** * Remove Item from collection * @param Item $itemToRemove * @return int */ public function removeItem(Item $itemToRemove) { foreach ($this->items as $key => $item) { /** @var Item $item */ if ($item->getAuthorAndTitle() === $itemToRemove->getAuthorAndTitle()) { unset($this->items[$key]); } } return $this->count(); }
/** * Add item to current transaction * @param null $id * @param null $quantity * @param null $value * @return $this */ public function addItem($id = null, $quantity = null, $value = null) { $item = new Item(); $item->setId($id); $item->setQuantity($quantity); $item->setValue($value); $this->_items->addItem($item); return $this; }