本文整理汇总了PHP中Magento\Quote\Model\Quote\Item::save方法的典型用法代码示例。如果您正苦于以下问题:PHP Item::save方法的具体用法?PHP Item::save怎么用?PHP Item::save使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Magento\Quote\Model\Quote\Item
的用法示例。
在下文中一共展示了Item::save方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: _assignOptionsToItem
/**
* Assign options to item
*
* @param \Magento\Quote\Model\Quote\Item $item
* @param array $options
* @return $this
*/
protected function _assignOptionsToItem(\Magento\Quote\Model\Quote\Item $item, $options)
{
$optionIds = $item->getOptionByCode('option_ids');
if ($optionIds) {
foreach (explode(',', $optionIds->getValue()) as $optionId) {
$item->removeOption('option_' . $optionId);
}
$item->removeOption('option_ids');
}
if ($item->getOptionByCode('additional_options')) {
$item->removeOption('additional_options');
}
$item->save();
if (!empty($options['options'])) {
$item->addOption(new \Magento\Framework\DataObject(['product' => $item->getProduct(), 'code' => 'option_ids', 'value' => implode(',', array_keys($options['options']))]));
foreach ($options['options'] as $optionId => $optionValue) {
$item->addOption(new \Magento\Framework\DataObject(['product' => $item->getProduct(), 'code' => 'option_' . $optionId, 'value' => $optionValue]));
}
}
if (!empty($options['additional_options'])) {
$item->addOption(new \Magento\Framework\DataObject(['product' => $item->getProduct(), 'code' => 'additional_options', 'value' => serialize($options['additional_options'])]));
}
return $this;
}