本文整理匯總了PHP中Magento\Catalog\Model\Product\Option::getValues方法的典型用法代碼示例。如果您正苦於以下問題:PHP Option::getValues方法的具體用法?PHP Option::getValues怎麽用?PHP Option::getValues使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Magento\Catalog\Model\Product\Option
的用法示例。
在下文中一共展示了Option::getValues方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: read
/**
* {@inheritdoc}
*/
public function read(\Magento\Catalog\Model\Product\Option $option)
{
$output = [];
foreach ($option->getValues() as $value) {
$output[] = $this->metadataBuilder->populateWithArray([Metadata::PRICE => $value->getPrice(), Metadata::PRICE_TYPE => $value->getPriceType(), Metadata::SKU => $value->getSku(), Metadata::TITLE => $value->getTitle(), Metadata::SORT_ORDER => $value->getSortOrder(), Metadata::OPTION_TYPE_ID => $value->getId()])->create();
}
return $output;
}
示例2: validateOptionValue
/**
* Validate option type fields
*
* @param Option $option
* @return bool
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
* @SuppressWarnings(PHPMD.NPathComplexity)
*/
protected function validateOptionValue(Option $option)
{
$values = $option->getValues() ?: $option->getData('values');
if (!is_array($values) || $this->isEmpty($values)) {
return false;
}
//forbid removal of last value for option
if ($this->checkAllValuesRemoved($values)) {
return false;
}
$storeId = \Magento\Store\Model\Store::DEFAULT_STORE_ID;
if ($option->getProduct()) {
$storeId = $option->getProduct()->getStoreId();
}
foreach ($values as $value) {
$type = isset($value['price_type']) ? $value['price_type'] : null;
$price = isset($value['price']) ? $value['price'] : null;
$title = isset($value['title']) ? $value['title'] : null;
if (!$this->isValidOptionPrice($type, $price, $storeId) || !$this->isValidOptionTitle($title, $storeId)) {
return false;
}
}
return true;
}
示例3: getOptionValues
/**
* Retrieve option values or false for options which has no values
*
* @param \Magento\Catalog\Model\Product\Option $option
* @return array|bool
*/
protected function getOptionValues(\Magento\Catalog\Model\Product\Option $option)
{
$values = $option->getValues();
if (!empty($values)) {
$result = [];
/** @var $value \Magento\Catalog\Model\Product\Option\Value */
foreach ($values as $value) {
$optionData = [];
foreach ($this->_assertOptionValues as $assertKey) {
if ($value->hasData($assertKey)) {
$optionData[$assertKey] = $value->getData($assertKey);
}
}
$result[] = $optionData;
}
return $result;
}
return false;
}