本文整理匯總了PHP中Magento\Customer\Model\Session::setCustomerData方法的典型用法代碼示例。如果您正苦於以下問題:PHP Session::setCustomerData方法的具體用法?PHP Session::setCustomerData怎麽用?PHP Session::setCustomerData使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Magento\Customer\Model\Session
的用法示例。
在下文中一共展示了Session::setCustomerData方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: beforeDispatch
/**
* @param AbstractAction $subject
* @param RequestInterface $request
* @return void
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
*/
public function beforeDispatch(AbstractAction $subject, RequestInterface $request)
{
if ($this->state->getAreaCode() == Area::AREA_FRONTEND && $request->isPost() && $this->notificationStorage->isExists(NotificationStorage::UPDATE_CUSTOMER_SESSION, $this->session->getCustomerId())) {
$customer = $this->customerRepository->getById($this->session->getCustomerId());
$this->session->setCustomerData($customer);
$this->session->setCustomerGroupId($customer->getGroupId());
$this->session->regenerateId();
$this->notificationStorage->remove(NotificationStorage::UPDATE_CUSTOMER_SESSION, $customer->getId());
}
}
示例2: executeInternal
/**
* Forgot customer account information page
*
* @return \Magento\Framework\View\Result\Page
*/
public function executeInternal()
{
/** @var \Magento\Framework\View\Result\Page $resultPage */
$resultPage = $this->resultPageFactory->create();
$block = $resultPage->getLayout()->getBlock('customer_edit');
if ($block) {
$block->setRefererUrl($this->_redirect->getRefererUrl());
}
$data = $this->session->getCustomerFormData(true);
$customerId = $this->session->getCustomerId();
$customerDataObject = $this->customerRepository->getById($customerId);
if (!empty($data)) {
$this->dataObjectHelper->populateWithArray($customerDataObject, $data, '\\Magento\\Customer\\Api\\Data\\CustomerInterface');
}
$this->session->setCustomerData($customerDataObject);
$this->session->setChangePassword($this->getRequest()->getParam('changepass') == 1);
$resultPage->getConfig()->getTitle()->set(__('Account Information'));
$resultPage->getLayout()->getBlock('messages')->setEscapeMessageFlag(true);
return $resultPage;
}