Я работаю над корзиной (модель корзины).Одним из его защищенных свойств является "_items", который содержит массив объектов Product.Все они (продукты) сохраняются в БД для заполнения сеанса (с использованием ZF, Zend_Session_SaveHandler_DbTable () и т.to "addItem ()":
$product1 = $prodMapper->getProductByName('cap');
$this->_cart->addItem($product1, 2);
getProductByName()
возвращает новый заполненный объект Model_Product.
Я обычно получаю
Please ensure that the class definition "Model_Product" of the object you are trying to operate on was loaded _before_ ...
сообщение об ошибке, дамп сеанса явно показывает
['__PHP_Incomplete_Class_Name'] => 'Model_Product'
Я знаю о «объявлении класса перед его сериализацией».Моя проблема заключается в следующем: как я могу объявить класс Product в addItem()
, если он вводится (первый параметр) в первую очередь?Разве новое объявление (например, new Model_Product()
) не перезапишет параметр (исходный объект) в addItem()
?Должен ли я объявить это снова в модели Корзины?
Кроме того, я обязательно получу Cannot redeclare class Model_Product
, если я ... повторно объявлю его в Корзине.