How to resolve Exception #0 (Exception): Notice: Array to string conversion Mailchimp Error The Next CEO of Stack OverflowNot able to add/update magento2 category post upgrade from 1.9 to 2.1.0How to use session and pass some value to phtml file to phtml file?Trying to uninstall moduleadmin grid not workingMagento 2 Admin Menu Fatal Error-session time outMagento2.2.4 : Uninstall a theme throw exceptions?Notice: Array to string conversion errorMagento 2.2.6 exceptionDeleted ShipperHQ module causing error in “All Customers” section of Magento 2“Area code is not set” in var/log

Towers in the ocean; How deep can they be built?

Is it correct to say moon starry nights?

Film where the government was corrupt with aliens, people sent to kill aliens are given rigged visors not showing the right aliens

How do you define an element with an ID attribute using LWC?

How to get the last not-null value in an ordered column of a huge table?

Is it OK to decorate a log book cover?

Airplane gently rocking its wings during whole flight

Help! I cannot understand this game’s notations!

Reshaping json / reparing json inside shell script (remove trailing comma)

Can this note be analyzed as a non-chord tone?

Is it ever safe to open a suspicious HTML file (e.g. email attachment)?

Is a distribution that is normal, but highly skewed, considered Gaussian?

What CSS properties can the br tag have?

What is the difference between "hamstring tendon" and "common hamstring tendon"?

My ex-girlfriend uses my Apple ID to login to her iPad, do I have to give her my Apple ID password to reset it?

What would be the main consequences for a country leaving the WTO?

Man transported from Alternate World into ours by a Neutrino Detector

Can you teleport closer to a creature you are Frightened of?

Plausibility of squid whales

Is it convenient to ask the journal's editor for two additional days to complete a review?

Is French Guiana a (hard) EU border?

Is it okay to majorly distort historical facts while writing a fiction story?

Raspberry pi 3 B with Ubuntu 18.04 server arm64: what chip

Can Sneak Attack be used when hitting with an improvised weapon?



How to resolve Exception #0 (Exception): Notice: Array to string conversion Mailchimp Error



The Next CEO of Stack OverflowNot able to add/update magento2 category post upgrade from 1.9 to 2.1.0How to use session and pass some value to phtml file to phtml file?Trying to uninstall moduleadmin grid not workingMagento 2 Admin Menu Fatal Error-session time outMagento2.2.4 : Uninstall a theme throw exceptions?Notice: Array to string conversion errorMagento 2.2.6 exceptionDeleted ShipperHQ module causing error in “All Customers” section of Magento 2“Area code is not set” in var/log










3
















Exception #0 (Exception): Notice: Array to string conversion in
/public_html/vendor/magento/framework/View/Element/Html/Select.php on
line 244




line 235-244 of the Select.php



public function calcOptionHash($optionValue)

return sprintf('%u', crc32($this->getName() . $this->getId() . $optionValue));



this is when i try to go to mailchimp configuration tab on the admin page.



full exception message here:



Exception #0 (Exception): Notice: Array to string conversion in /public_html/vendor/magento/framework/View/Element/Html/Select.php on line 243
#0 /public_html/vendor/magento/framework/View/Element/Html/Select.php(243): MagentoFrameworkAppErrorHandler->handler(8, 'Array to string...', '/p...', 243, Array)
#1 /public_html/vendor/mailchimp/mc-magento2/Block/Adminhtml/System/Config/Form/Field/CustomerMap.php(68): MagentoFrameworkViewElementHtmlSelect->calcOptionHash(Array)
#2 /public_html/vendor/magento/module-config/Block/System/Config/Form/Field/FieldArray/AbstractFieldArray.php(159): EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldCustomerMap->_prepareArrayRow(Object(MagentoFrameworkDataObject))
#3 /public_html/vendor/magento/module-config/view/adminhtml/templates/system/config/form/field/array.phtml(117): MagentoConfigBlockSystemConfigFormFieldFieldArrayAbstractFieldArray->getArrayRows()
#4 /public_html/vendor/magento/framework/View/TemplateEngine/Php.php(59): include('/p...')
#5 /public_html/vendor/magento/framework/View/Element/Template.php(270): MagentoFrameworkViewTemplateEnginePhp->render(Object(EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldCustomerMapInterceptor), '/p...', Array)
#6 /public_html/vendor/magento/framework/View/Element/Template.php(300): MagentoFrameworkViewElementTemplate->fetchView('/p...')
#7 /public_html/vendor/magento/module-backend/Block/Template.php(126): MagentoFrameworkViewElementTemplate->_toHtml()
#8 /public_html/vendor/magento/module-config/Block/System/Config/Form/Field/FieldArray/AbstractFieldArray.php(262): MagentoBackendBlockTemplate->_toHtml()
#9 /public_html/vendor/magento/module-config/Block/System/Config/Form/Field/FieldArray/AbstractFieldArray.php(116): MagentoConfigBlockSystemConfigFormFieldFieldArrayAbstractFieldArray->_toHtml()
#10 /public_html/vendor/magento/module-config/Block/System/Config/Form/Field.php(73): MagentoConfigBlockSystemConfigFormFieldFieldArrayAbstractFieldArray->_getElementHtml(Object(MagentoFrameworkDataFormElementText))
#11 /public_html/vendor/magento/module-config/Block/System/Config/Form/Field.php(52): MagentoConfigBlockSystemConfigFormField->_renderValue(Object(MagentoFrameworkDataFormElementText))
#12 /public_html/vendor/magento/framework/Interception/Interceptor.php(58): MagentoConfigBlockSystemConfigFormField->render(Object(MagentoFrameworkDataFormElementText))
#13 /public_html/vendor/magento/framework/Interception/Interceptor.php(138): EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldCustomerMapInterceptor->___callParent('render', Array)
#14 /public_html/vendor/magento/framework/Interception/Interceptor.php(153): EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldCustomerMapInterceptor->MagentoFrameworkInterceptionclosure(Object(MagentoFrameworkDataFormElementText))
#15 /public_html/generated/code/Ebizmarts/MailChimp/Block/Adminhtml/System/Config/Form/Field/CustomerMap/Interceptor.php(26): EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldCustomerMapInterceptor->___callPlugins('render', Array, Array)
#16 /public_html/vendor/magento/framework/Data/Form/Element/AbstractElement.php(459): EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldCustomerMapInterceptor->render(Object(MagentoFrameworkDataFormElementText))
#17 /public_html/vendor/magento/framework/Data/Form/Element/Text.php(43): MagentoFrameworkDataFormElementAbstractElement->getHtml()
#18 /public_html/vendor/magento/framework/Data/Form/Element/AbstractElement.php(473): MagentoFrameworkDataFormElementText->getHtml()
#19 /public_html/vendor/magento/module-config/Block/System/Config/Form/Fieldset.php(86): MagentoFrameworkDataFormElementAbstractElement->toHtml()
#20 /public_html/vendor/magento/module-config/Block/System/Config/Form/Fieldset.php(66): MagentoConfigBlockSystemConfigFormFieldset->_getChildrenElementsHtml(Object(MagentoFrameworkDataFormElementFieldset))
#21 /public_html/vendor/magento/framework/Data/Form/Element/AbstractElement.php(459): MagentoConfigBlockSystemConfigFormFieldset->render(Object(MagentoFrameworkDataFormElementFieldset))
#22 /public_html/vendor/magento/framework/Data/Form/Element/AbstractElement.php(473): MagentoFrameworkDataFormElementAbstractElement->getHtml()
#23 /public_html/vendor/magento/framework/Data/Form.php(325): MagentoFrameworkDataFormElementAbstractElement->toHtml()
#24 /public_html/vendor/magento/framework/Data/Form.php(340): MagentoFrameworkDataForm->toHtml()
#25 /public_html/vendor/magento/module-backend/Block/Widget/Form.php(101): MagentoFrameworkDataForm->getHtml()
#26 /public_html/vendor/magento/module-backend/view/adminhtml/templates/widget/form.phtml(15): MagentoBackendBlockWidgetForm->getFormHtml()
#27 /public_html/vendor/magento/framework/View/TemplateEngine/Php.php(59): include('/p...')
#28 /public_html/vendor/magento/framework/View/Element/Template.php(270): MagentoFrameworkViewTemplateEnginePhp->render(Object(MagentoConfigBlockSystemConfigForm), '/p...', Array)
#29 /public_html/vendor/magento/framework/View/Element/Template.php(300): MagentoFrameworkViewElementTemplate->fetchView('/p...')
#30 /public_html/vendor/magento/module-backend/Block/Template.php(126): MagentoFrameworkViewElementTemplate->_toHtml()
#31 /public_html/vendor/magento/framework/View/Element/AbstractBlock.php(667): MagentoBackendBlockTemplate->_toHtml()
#32 /public_html/vendor/magento/framework/View/Layout.php(557): MagentoFrameworkViewElementAbstractBlock->toHtml()
#33 /public_html/vendor/magento/framework/View/Layout.php(533): MagentoFrameworkViewLayout->_renderBlock('system\config\f...')
#34 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('system\config\f...')
#35 /public_html/vendor/magento/framework/View/Element/AbstractBlock.php(507): MagentoFrameworkViewLayout->renderElement('system\config\f...', true)
#36 /public_html/vendor/magento/module-config/view/adminhtml/templates/system/config/edit.phtml(22): MagentoFrameworkViewElementAbstractBlock->getChildHtml('form')
#37 /public_html/vendor/magento/framework/View/TemplateEngine/Php.php(59): include('/p...')
#38 /public_html/vendor/magento/framework/View/Element/Template.php(270): MagentoFrameworkViewTemplateEnginePhp->render(Object(MagentoConfigBlockSystemConfigEdit), '/p...', Array)
#39 /public_html/vendor/magento/framework/View/Element/Template.php(300): MagentoFrameworkViewElementTemplate->fetchView('/p...')
#40 /public_html/vendor/magento/module-backend/Block/Template.php(126): MagentoFrameworkViewElementTemplate->_toHtml()
#41 /public_html/vendor/magento/framework/View/Element/AbstractBlock.php(667): MagentoBackendBlockTemplate->_toHtml()
#42 /public_html/vendor/magento/framework/View/Layout.php(557): MagentoFrameworkViewElementAbstractBlock->toHtml()
#43 /public_html/vendor/magento/framework/View/Layout.php(533): MagentoFrameworkViewLayout->_renderBlock('system.config.e...')
#44 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('system.config.e...')
#45 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('system.config.e...', false)
#46 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('content', false)
#47 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('content')
#48 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('content', false)
#49 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('admin.scope.col...', false)
#50 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('admin.scope.col...')
#51 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('admin.scope.col...', false)
#52 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('main.col', false)
#53 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('main.col')
#54 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('main.col', false)
#55 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('page.main.conta...', false)
#56 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('page.main.conta...')
#57 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('page.main.conta...', false)
#58 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('page.content', false)
#59 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('page.content')
#60 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('page.content', false)
#61 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('page.wrapper', false)
#62 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('page.wrapper')
#63 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('page.wrapper', false)
#64 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('backend.page', false)
#65 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('backend.page')
#66 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('backend.page', false)
#67 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('root', false)
#68 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('root')
#69 /public_html/vendor/magento/framework/View/Layout.php(954): MagentoFrameworkViewLayout->renderElement('root')
#70 /public_html/generated/code/Magento/Framework/View/Layout/Interceptor.php(37): MagentoFrameworkViewLayout->getOutput()
#71 /public_html/vendor/magento/framework/View/Result/Page.php(257): MagentoFrameworkViewLayoutInterceptor->getOutput()
#72 /public_html/vendor/magento/framework/View/Result/Layout.php(170): MagentoFrameworkViewResultPage->render(Object(MagentoFrameworkAppResponseHttpInterceptor))
#73 /public_html/generated/code/Magento/Backend/Model/View/Result/Page/Interceptor.php(24): MagentoFrameworkViewResultLayout->renderResult(Object(MagentoFrameworkAppResponseHttpInterceptor))
#74 /public_html/vendor/magento/framework/App/Http.php(139): MagentoBackendModelViewResultPageInterceptor->renderResult(Object(MagentoFrameworkAppResponseHttpInterceptor))
#75 /public_html/vendor/magento/framework/App/Bootstrap.php(257): MagentoFrameworkAppHttp->launch()
#76 /public_html/index.php(39): MagentoFrameworkAppBootstrap->run(Object(MagentoFrameworkAppHttpInterceptor))
#77 main


CustomerMap.php code as below



<?php
/**
* mc-magento2 Magento Component
*
* @category Ebizmarts
* @package mc-magento2
* @author Ebizmarts Team <info@ebizmarts.com>
* @copyright Ebizmarts (http://ebizmarts.com)
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
* @date: 10/27/17 12:01 PM
* @file: CustomerMap.php
*/

namespace EbizmartsMailChimpBlockAdminhtmlSystemConfigFormField;

class CustomerMap extends MagentoConfigBlockSystemConfigFormFieldFieldArrayAbstractFieldArray

/**
* @var VarsMap
*/
protected $_varsRenderer=null;
protected $_mailchimpRenderer=null;

protected function _getVarsRenderer()

if (!$this->_varsRenderer)
$this->_varsRenderer = $this->getLayout()->createBlock(
'EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldVarsMap',
'',
['data' => ['is_render_to_js_template' => true]]
);
$this->_varsRenderer->setClass('customer_field_select');

return $this->_varsRenderer;

protected function _getMailchimpRenderer()

if (!$this->_mailchimpRenderer)
$this->_mailchimpRenderer = $this->getLayout()->createBlock(
'EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldMailchimpMap',
'',
['data' => ['is_render_to_js_template' => true]]
);
$this->_mailchimpRenderer->setClass('mailchimp_field_select');

return $this->_mailchimpRenderer;


protected function _prepareToRender()

// $this->addColumn('mailchimp', ['label' => __('Mailchimp')]);
$this->addColumn(
'mailchimp_field_id',
['label' => __('Mailchimp'), 'renderer' => $this->_getMailchimpRenderer()]
);
$this->addColumn(
'customer_field_id',
['label' => __('Magento'), 'renderer' => $this->_getVarsRenderer()]
);
$this->_addAfter = false;
$this->_addButtonLabel = __('Add');

protected function _prepareArrayRow(MagentoFrameworkDataObject $row)

$optionExtraAttr = [];
$optionExtraAttr['option_' . $this->_getVarsRenderer()->calcOptionHash($row->getData('customer_field_id'))] =
'selected="selected"';
//$optionExtraAttr['option_' . $this->_getMailchimpRenderer()->calcOptionHash($row->getData('mailchimp_field_id'))] =
// 'selected="selected"';
$row->setData(
'option_extra_attrs',
$optionExtraAttr
);




var/xxx.php.error.log



[21-Mar-2019 06:54:52 UTC] PHP Fatal error: Uncaught Error: Call to undefined method EbizmartsMailChimpHelperData::serialize() in /public_html/vendor/mailchimp/mc-magento2/Helper/VarsMap.php:99 Stack trace:
#0 /public_html/vendor/mailchimp/mc-magento2/Helper/VarsMap.php(49): EbizmartsMailChimpHelperVarsMap->serializeValue(Array)
#1 /public_html/vendor/mailchimp/mc-magento2/Model/Config/Backend/VarsMap.php(71): EbizmartsMailChimpHelperVarsMap->makeStorableArrayFieldValue(Array)
#2 /public_html/vendor/magento/framework/Model/ResourceModel/Db/AbstractDb.php(406): EbizmartsMailChimpModelConfigBackendVarsMap->beforeSave()
#3 /public_html/vendor/magento/framework/Model/AbstractModel.php(647): MagentoFrameworkModelResourceModelDbAbstractDb->save(Object(EbizmartsMailChimpModelConfigBackendVarsMapInterceptor))
#4 /public_html/vendor/magento/framework/DB/Transaction.php(129): MagentoFrameworkModelAbstractModel->save()
#5 /public_html/vendor/mage in /public_html/vendor/mailchimp/mc-magento2/Helper/VarsMap.php on line 99


VarsMap.php as below



<?php
/**
* mc-magento2 Magento Component
*
* @category Ebizmarts
* @package mc-magento2
* @author Ebizmarts Team <info@ebizmarts.com>
* @copyright Ebizmarts (http://ebizmarts.com)
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
* @date: 10/27/17 3:41 PM
* @file: VarsMap.php
*/

namespace EbizmartsMailChimpBlockAdminhtmlSystemConfigFormField;

class VarsMap extends MagentoFrameworkViewElementHtmlSelect

/**
* @var MagentoCustomerModelResourceModelAttributeCollectionFactory
*/
private $_attCollection;
/**
* VarsMap constructor.
* @param MagentoFrameworkViewElementContext $context
* @param MagentoCustomerModelResourceModelAttributeCollectionFactory $attCollection
* @param array $data
*/
public function __construct(
MagentoFrameworkViewElementContext $context,
MagentoCustomerModelResourceModelAttributeCollectionFactory $attCollection,
array $data = []
)

parent::__construct($context, $data);
$this->_attCollection = $attCollection;


protected function _getCustomerAtt()

$ret = [];
$collection = $this->_attCollection->create();
/**
* @var $item MagentoCustomerModelAttribute
*/
foreach ($collection as $item)
$ret[$item->getId()] = $item->getFrontendLabel();


natsort($ret);
return $ret;


public function setInputName($value)

return $this->setName($value);


/**
* Render block HTML
*
* @return string
*/
public function _toHtml()

if (!$this->getOptions())
foreach ($this->_getCustomerAtt() as $attId => $attLabel)
$this->addOption($attId, addslashes($attLabel));


return parent::_toHtml();











share|improve this question




























    3
















    Exception #0 (Exception): Notice: Array to string conversion in
    /public_html/vendor/magento/framework/View/Element/Html/Select.php on
    line 244




    line 235-244 of the Select.php



    public function calcOptionHash($optionValue)

    return sprintf('%u', crc32($this->getName() . $this->getId() . $optionValue));



    this is when i try to go to mailchimp configuration tab on the admin page.



    full exception message here:



    Exception #0 (Exception): Notice: Array to string conversion in /public_html/vendor/magento/framework/View/Element/Html/Select.php on line 243
    #0 /public_html/vendor/magento/framework/View/Element/Html/Select.php(243): MagentoFrameworkAppErrorHandler->handler(8, 'Array to string...', '/p...', 243, Array)
    #1 /public_html/vendor/mailchimp/mc-magento2/Block/Adminhtml/System/Config/Form/Field/CustomerMap.php(68): MagentoFrameworkViewElementHtmlSelect->calcOptionHash(Array)
    #2 /public_html/vendor/magento/module-config/Block/System/Config/Form/Field/FieldArray/AbstractFieldArray.php(159): EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldCustomerMap->_prepareArrayRow(Object(MagentoFrameworkDataObject))
    #3 /public_html/vendor/magento/module-config/view/adminhtml/templates/system/config/form/field/array.phtml(117): MagentoConfigBlockSystemConfigFormFieldFieldArrayAbstractFieldArray->getArrayRows()
    #4 /public_html/vendor/magento/framework/View/TemplateEngine/Php.php(59): include('/p...')
    #5 /public_html/vendor/magento/framework/View/Element/Template.php(270): MagentoFrameworkViewTemplateEnginePhp->render(Object(EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldCustomerMapInterceptor), '/p...', Array)
    #6 /public_html/vendor/magento/framework/View/Element/Template.php(300): MagentoFrameworkViewElementTemplate->fetchView('/p...')
    #7 /public_html/vendor/magento/module-backend/Block/Template.php(126): MagentoFrameworkViewElementTemplate->_toHtml()
    #8 /public_html/vendor/magento/module-config/Block/System/Config/Form/Field/FieldArray/AbstractFieldArray.php(262): MagentoBackendBlockTemplate->_toHtml()
    #9 /public_html/vendor/magento/module-config/Block/System/Config/Form/Field/FieldArray/AbstractFieldArray.php(116): MagentoConfigBlockSystemConfigFormFieldFieldArrayAbstractFieldArray->_toHtml()
    #10 /public_html/vendor/magento/module-config/Block/System/Config/Form/Field.php(73): MagentoConfigBlockSystemConfigFormFieldFieldArrayAbstractFieldArray->_getElementHtml(Object(MagentoFrameworkDataFormElementText))
    #11 /public_html/vendor/magento/module-config/Block/System/Config/Form/Field.php(52): MagentoConfigBlockSystemConfigFormField->_renderValue(Object(MagentoFrameworkDataFormElementText))
    #12 /public_html/vendor/magento/framework/Interception/Interceptor.php(58): MagentoConfigBlockSystemConfigFormField->render(Object(MagentoFrameworkDataFormElementText))
    #13 /public_html/vendor/magento/framework/Interception/Interceptor.php(138): EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldCustomerMapInterceptor->___callParent('render', Array)
    #14 /public_html/vendor/magento/framework/Interception/Interceptor.php(153): EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldCustomerMapInterceptor->MagentoFrameworkInterceptionclosure(Object(MagentoFrameworkDataFormElementText))
    #15 /public_html/generated/code/Ebizmarts/MailChimp/Block/Adminhtml/System/Config/Form/Field/CustomerMap/Interceptor.php(26): EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldCustomerMapInterceptor->___callPlugins('render', Array, Array)
    #16 /public_html/vendor/magento/framework/Data/Form/Element/AbstractElement.php(459): EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldCustomerMapInterceptor->render(Object(MagentoFrameworkDataFormElementText))
    #17 /public_html/vendor/magento/framework/Data/Form/Element/Text.php(43): MagentoFrameworkDataFormElementAbstractElement->getHtml()
    #18 /public_html/vendor/magento/framework/Data/Form/Element/AbstractElement.php(473): MagentoFrameworkDataFormElementText->getHtml()
    #19 /public_html/vendor/magento/module-config/Block/System/Config/Form/Fieldset.php(86): MagentoFrameworkDataFormElementAbstractElement->toHtml()
    #20 /public_html/vendor/magento/module-config/Block/System/Config/Form/Fieldset.php(66): MagentoConfigBlockSystemConfigFormFieldset->_getChildrenElementsHtml(Object(MagentoFrameworkDataFormElementFieldset))
    #21 /public_html/vendor/magento/framework/Data/Form/Element/AbstractElement.php(459): MagentoConfigBlockSystemConfigFormFieldset->render(Object(MagentoFrameworkDataFormElementFieldset))
    #22 /public_html/vendor/magento/framework/Data/Form/Element/AbstractElement.php(473): MagentoFrameworkDataFormElementAbstractElement->getHtml()
    #23 /public_html/vendor/magento/framework/Data/Form.php(325): MagentoFrameworkDataFormElementAbstractElement->toHtml()
    #24 /public_html/vendor/magento/framework/Data/Form.php(340): MagentoFrameworkDataForm->toHtml()
    #25 /public_html/vendor/magento/module-backend/Block/Widget/Form.php(101): MagentoFrameworkDataForm->getHtml()
    #26 /public_html/vendor/magento/module-backend/view/adminhtml/templates/widget/form.phtml(15): MagentoBackendBlockWidgetForm->getFormHtml()
    #27 /public_html/vendor/magento/framework/View/TemplateEngine/Php.php(59): include('/p...')
    #28 /public_html/vendor/magento/framework/View/Element/Template.php(270): MagentoFrameworkViewTemplateEnginePhp->render(Object(MagentoConfigBlockSystemConfigForm), '/p...', Array)
    #29 /public_html/vendor/magento/framework/View/Element/Template.php(300): MagentoFrameworkViewElementTemplate->fetchView('/p...')
    #30 /public_html/vendor/magento/module-backend/Block/Template.php(126): MagentoFrameworkViewElementTemplate->_toHtml()
    #31 /public_html/vendor/magento/framework/View/Element/AbstractBlock.php(667): MagentoBackendBlockTemplate->_toHtml()
    #32 /public_html/vendor/magento/framework/View/Layout.php(557): MagentoFrameworkViewElementAbstractBlock->toHtml()
    #33 /public_html/vendor/magento/framework/View/Layout.php(533): MagentoFrameworkViewLayout->_renderBlock('system\config\f...')
    #34 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('system\config\f...')
    #35 /public_html/vendor/magento/framework/View/Element/AbstractBlock.php(507): MagentoFrameworkViewLayout->renderElement('system\config\f...', true)
    #36 /public_html/vendor/magento/module-config/view/adminhtml/templates/system/config/edit.phtml(22): MagentoFrameworkViewElementAbstractBlock->getChildHtml('form')
    #37 /public_html/vendor/magento/framework/View/TemplateEngine/Php.php(59): include('/p...')
    #38 /public_html/vendor/magento/framework/View/Element/Template.php(270): MagentoFrameworkViewTemplateEnginePhp->render(Object(MagentoConfigBlockSystemConfigEdit), '/p...', Array)
    #39 /public_html/vendor/magento/framework/View/Element/Template.php(300): MagentoFrameworkViewElementTemplate->fetchView('/p...')
    #40 /public_html/vendor/magento/module-backend/Block/Template.php(126): MagentoFrameworkViewElementTemplate->_toHtml()
    #41 /public_html/vendor/magento/framework/View/Element/AbstractBlock.php(667): MagentoBackendBlockTemplate->_toHtml()
    #42 /public_html/vendor/magento/framework/View/Layout.php(557): MagentoFrameworkViewElementAbstractBlock->toHtml()
    #43 /public_html/vendor/magento/framework/View/Layout.php(533): MagentoFrameworkViewLayout->_renderBlock('system.config.e...')
    #44 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('system.config.e...')
    #45 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('system.config.e...', false)
    #46 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('content', false)
    #47 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('content')
    #48 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('content', false)
    #49 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('admin.scope.col...', false)
    #50 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('admin.scope.col...')
    #51 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('admin.scope.col...', false)
    #52 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('main.col', false)
    #53 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('main.col')
    #54 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('main.col', false)
    #55 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('page.main.conta...', false)
    #56 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('page.main.conta...')
    #57 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('page.main.conta...', false)
    #58 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('page.content', false)
    #59 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('page.content')
    #60 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('page.content', false)
    #61 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('page.wrapper', false)
    #62 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('page.wrapper')
    #63 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('page.wrapper', false)
    #64 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('backend.page', false)
    #65 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('backend.page')
    #66 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('backend.page', false)
    #67 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('root', false)
    #68 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('root')
    #69 /public_html/vendor/magento/framework/View/Layout.php(954): MagentoFrameworkViewLayout->renderElement('root')
    #70 /public_html/generated/code/Magento/Framework/View/Layout/Interceptor.php(37): MagentoFrameworkViewLayout->getOutput()
    #71 /public_html/vendor/magento/framework/View/Result/Page.php(257): MagentoFrameworkViewLayoutInterceptor->getOutput()
    #72 /public_html/vendor/magento/framework/View/Result/Layout.php(170): MagentoFrameworkViewResultPage->render(Object(MagentoFrameworkAppResponseHttpInterceptor))
    #73 /public_html/generated/code/Magento/Backend/Model/View/Result/Page/Interceptor.php(24): MagentoFrameworkViewResultLayout->renderResult(Object(MagentoFrameworkAppResponseHttpInterceptor))
    #74 /public_html/vendor/magento/framework/App/Http.php(139): MagentoBackendModelViewResultPageInterceptor->renderResult(Object(MagentoFrameworkAppResponseHttpInterceptor))
    #75 /public_html/vendor/magento/framework/App/Bootstrap.php(257): MagentoFrameworkAppHttp->launch()
    #76 /public_html/index.php(39): MagentoFrameworkAppBootstrap->run(Object(MagentoFrameworkAppHttpInterceptor))
    #77 main


    CustomerMap.php code as below



    <?php
    /**
    * mc-magento2 Magento Component
    *
    * @category Ebizmarts
    * @package mc-magento2
    * @author Ebizmarts Team <info@ebizmarts.com>
    * @copyright Ebizmarts (http://ebizmarts.com)
    * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
    * @date: 10/27/17 12:01 PM
    * @file: CustomerMap.php
    */

    namespace EbizmartsMailChimpBlockAdminhtmlSystemConfigFormField;

    class CustomerMap extends MagentoConfigBlockSystemConfigFormFieldFieldArrayAbstractFieldArray

    /**
    * @var VarsMap
    */
    protected $_varsRenderer=null;
    protected $_mailchimpRenderer=null;

    protected function _getVarsRenderer()

    if (!$this->_varsRenderer)
    $this->_varsRenderer = $this->getLayout()->createBlock(
    'EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldVarsMap',
    '',
    ['data' => ['is_render_to_js_template' => true]]
    );
    $this->_varsRenderer->setClass('customer_field_select');

    return $this->_varsRenderer;

    protected function _getMailchimpRenderer()

    if (!$this->_mailchimpRenderer)
    $this->_mailchimpRenderer = $this->getLayout()->createBlock(
    'EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldMailchimpMap',
    '',
    ['data' => ['is_render_to_js_template' => true]]
    );
    $this->_mailchimpRenderer->setClass('mailchimp_field_select');

    return $this->_mailchimpRenderer;


    protected function _prepareToRender()

    // $this->addColumn('mailchimp', ['label' => __('Mailchimp')]);
    $this->addColumn(
    'mailchimp_field_id',
    ['label' => __('Mailchimp'), 'renderer' => $this->_getMailchimpRenderer()]
    );
    $this->addColumn(
    'customer_field_id',
    ['label' => __('Magento'), 'renderer' => $this->_getVarsRenderer()]
    );
    $this->_addAfter = false;
    $this->_addButtonLabel = __('Add');

    protected function _prepareArrayRow(MagentoFrameworkDataObject $row)

    $optionExtraAttr = [];
    $optionExtraAttr['option_' . $this->_getVarsRenderer()->calcOptionHash($row->getData('customer_field_id'))] =
    'selected="selected"';
    //$optionExtraAttr['option_' . $this->_getMailchimpRenderer()->calcOptionHash($row->getData('mailchimp_field_id'))] =
    // 'selected="selected"';
    $row->setData(
    'option_extra_attrs',
    $optionExtraAttr
    );




    var/xxx.php.error.log



    [21-Mar-2019 06:54:52 UTC] PHP Fatal error: Uncaught Error: Call to undefined method EbizmartsMailChimpHelperData::serialize() in /public_html/vendor/mailchimp/mc-magento2/Helper/VarsMap.php:99 Stack trace:
    #0 /public_html/vendor/mailchimp/mc-magento2/Helper/VarsMap.php(49): EbizmartsMailChimpHelperVarsMap->serializeValue(Array)
    #1 /public_html/vendor/mailchimp/mc-magento2/Model/Config/Backend/VarsMap.php(71): EbizmartsMailChimpHelperVarsMap->makeStorableArrayFieldValue(Array)
    #2 /public_html/vendor/magento/framework/Model/ResourceModel/Db/AbstractDb.php(406): EbizmartsMailChimpModelConfigBackendVarsMap->beforeSave()
    #3 /public_html/vendor/magento/framework/Model/AbstractModel.php(647): MagentoFrameworkModelResourceModelDbAbstractDb->save(Object(EbizmartsMailChimpModelConfigBackendVarsMapInterceptor))
    #4 /public_html/vendor/magento/framework/DB/Transaction.php(129): MagentoFrameworkModelAbstractModel->save()
    #5 /public_html/vendor/mage in /public_html/vendor/mailchimp/mc-magento2/Helper/VarsMap.php on line 99


    VarsMap.php as below



    <?php
    /**
    * mc-magento2 Magento Component
    *
    * @category Ebizmarts
    * @package mc-magento2
    * @author Ebizmarts Team <info@ebizmarts.com>
    * @copyright Ebizmarts (http://ebizmarts.com)
    * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
    * @date: 10/27/17 3:41 PM
    * @file: VarsMap.php
    */

    namespace EbizmartsMailChimpBlockAdminhtmlSystemConfigFormField;

    class VarsMap extends MagentoFrameworkViewElementHtmlSelect

    /**
    * @var MagentoCustomerModelResourceModelAttributeCollectionFactory
    */
    private $_attCollection;
    /**
    * VarsMap constructor.
    * @param MagentoFrameworkViewElementContext $context
    * @param MagentoCustomerModelResourceModelAttributeCollectionFactory $attCollection
    * @param array $data
    */
    public function __construct(
    MagentoFrameworkViewElementContext $context,
    MagentoCustomerModelResourceModelAttributeCollectionFactory $attCollection,
    array $data = []
    )

    parent::__construct($context, $data);
    $this->_attCollection = $attCollection;


    protected function _getCustomerAtt()

    $ret = [];
    $collection = $this->_attCollection->create();
    /**
    * @var $item MagentoCustomerModelAttribute
    */
    foreach ($collection as $item)
    $ret[$item->getId()] = $item->getFrontendLabel();


    natsort($ret);
    return $ret;


    public function setInputName($value)

    return $this->setName($value);


    /**
    * Render block HTML
    *
    * @return string
    */
    public function _toHtml()

    if (!$this->getOptions())
    foreach ($this->_getCustomerAtt() as $attId => $attLabel)
    $this->addOption($attId, addslashes($attLabel));


    return parent::_toHtml();











    share|improve this question


























      3












      3








      3









      Exception #0 (Exception): Notice: Array to string conversion in
      /public_html/vendor/magento/framework/View/Element/Html/Select.php on
      line 244




      line 235-244 of the Select.php



      public function calcOptionHash($optionValue)

      return sprintf('%u', crc32($this->getName() . $this->getId() . $optionValue));



      this is when i try to go to mailchimp configuration tab on the admin page.



      full exception message here:



      Exception #0 (Exception): Notice: Array to string conversion in /public_html/vendor/magento/framework/View/Element/Html/Select.php on line 243
      #0 /public_html/vendor/magento/framework/View/Element/Html/Select.php(243): MagentoFrameworkAppErrorHandler->handler(8, 'Array to string...', '/p...', 243, Array)
      #1 /public_html/vendor/mailchimp/mc-magento2/Block/Adminhtml/System/Config/Form/Field/CustomerMap.php(68): MagentoFrameworkViewElementHtmlSelect->calcOptionHash(Array)
      #2 /public_html/vendor/magento/module-config/Block/System/Config/Form/Field/FieldArray/AbstractFieldArray.php(159): EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldCustomerMap->_prepareArrayRow(Object(MagentoFrameworkDataObject))
      #3 /public_html/vendor/magento/module-config/view/adminhtml/templates/system/config/form/field/array.phtml(117): MagentoConfigBlockSystemConfigFormFieldFieldArrayAbstractFieldArray->getArrayRows()
      #4 /public_html/vendor/magento/framework/View/TemplateEngine/Php.php(59): include('/p...')
      #5 /public_html/vendor/magento/framework/View/Element/Template.php(270): MagentoFrameworkViewTemplateEnginePhp->render(Object(EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldCustomerMapInterceptor), '/p...', Array)
      #6 /public_html/vendor/magento/framework/View/Element/Template.php(300): MagentoFrameworkViewElementTemplate->fetchView('/p...')
      #7 /public_html/vendor/magento/module-backend/Block/Template.php(126): MagentoFrameworkViewElementTemplate->_toHtml()
      #8 /public_html/vendor/magento/module-config/Block/System/Config/Form/Field/FieldArray/AbstractFieldArray.php(262): MagentoBackendBlockTemplate->_toHtml()
      #9 /public_html/vendor/magento/module-config/Block/System/Config/Form/Field/FieldArray/AbstractFieldArray.php(116): MagentoConfigBlockSystemConfigFormFieldFieldArrayAbstractFieldArray->_toHtml()
      #10 /public_html/vendor/magento/module-config/Block/System/Config/Form/Field.php(73): MagentoConfigBlockSystemConfigFormFieldFieldArrayAbstractFieldArray->_getElementHtml(Object(MagentoFrameworkDataFormElementText))
      #11 /public_html/vendor/magento/module-config/Block/System/Config/Form/Field.php(52): MagentoConfigBlockSystemConfigFormField->_renderValue(Object(MagentoFrameworkDataFormElementText))
      #12 /public_html/vendor/magento/framework/Interception/Interceptor.php(58): MagentoConfigBlockSystemConfigFormField->render(Object(MagentoFrameworkDataFormElementText))
      #13 /public_html/vendor/magento/framework/Interception/Interceptor.php(138): EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldCustomerMapInterceptor->___callParent('render', Array)
      #14 /public_html/vendor/magento/framework/Interception/Interceptor.php(153): EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldCustomerMapInterceptor->MagentoFrameworkInterceptionclosure(Object(MagentoFrameworkDataFormElementText))
      #15 /public_html/generated/code/Ebizmarts/MailChimp/Block/Adminhtml/System/Config/Form/Field/CustomerMap/Interceptor.php(26): EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldCustomerMapInterceptor->___callPlugins('render', Array, Array)
      #16 /public_html/vendor/magento/framework/Data/Form/Element/AbstractElement.php(459): EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldCustomerMapInterceptor->render(Object(MagentoFrameworkDataFormElementText))
      #17 /public_html/vendor/magento/framework/Data/Form/Element/Text.php(43): MagentoFrameworkDataFormElementAbstractElement->getHtml()
      #18 /public_html/vendor/magento/framework/Data/Form/Element/AbstractElement.php(473): MagentoFrameworkDataFormElementText->getHtml()
      #19 /public_html/vendor/magento/module-config/Block/System/Config/Form/Fieldset.php(86): MagentoFrameworkDataFormElementAbstractElement->toHtml()
      #20 /public_html/vendor/magento/module-config/Block/System/Config/Form/Fieldset.php(66): MagentoConfigBlockSystemConfigFormFieldset->_getChildrenElementsHtml(Object(MagentoFrameworkDataFormElementFieldset))
      #21 /public_html/vendor/magento/framework/Data/Form/Element/AbstractElement.php(459): MagentoConfigBlockSystemConfigFormFieldset->render(Object(MagentoFrameworkDataFormElementFieldset))
      #22 /public_html/vendor/magento/framework/Data/Form/Element/AbstractElement.php(473): MagentoFrameworkDataFormElementAbstractElement->getHtml()
      #23 /public_html/vendor/magento/framework/Data/Form.php(325): MagentoFrameworkDataFormElementAbstractElement->toHtml()
      #24 /public_html/vendor/magento/framework/Data/Form.php(340): MagentoFrameworkDataForm->toHtml()
      #25 /public_html/vendor/magento/module-backend/Block/Widget/Form.php(101): MagentoFrameworkDataForm->getHtml()
      #26 /public_html/vendor/magento/module-backend/view/adminhtml/templates/widget/form.phtml(15): MagentoBackendBlockWidgetForm->getFormHtml()
      #27 /public_html/vendor/magento/framework/View/TemplateEngine/Php.php(59): include('/p...')
      #28 /public_html/vendor/magento/framework/View/Element/Template.php(270): MagentoFrameworkViewTemplateEnginePhp->render(Object(MagentoConfigBlockSystemConfigForm), '/p...', Array)
      #29 /public_html/vendor/magento/framework/View/Element/Template.php(300): MagentoFrameworkViewElementTemplate->fetchView('/p...')
      #30 /public_html/vendor/magento/module-backend/Block/Template.php(126): MagentoFrameworkViewElementTemplate->_toHtml()
      #31 /public_html/vendor/magento/framework/View/Element/AbstractBlock.php(667): MagentoBackendBlockTemplate->_toHtml()
      #32 /public_html/vendor/magento/framework/View/Layout.php(557): MagentoFrameworkViewElementAbstractBlock->toHtml()
      #33 /public_html/vendor/magento/framework/View/Layout.php(533): MagentoFrameworkViewLayout->_renderBlock('system\config\f...')
      #34 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('system\config\f...')
      #35 /public_html/vendor/magento/framework/View/Element/AbstractBlock.php(507): MagentoFrameworkViewLayout->renderElement('system\config\f...', true)
      #36 /public_html/vendor/magento/module-config/view/adminhtml/templates/system/config/edit.phtml(22): MagentoFrameworkViewElementAbstractBlock->getChildHtml('form')
      #37 /public_html/vendor/magento/framework/View/TemplateEngine/Php.php(59): include('/p...')
      #38 /public_html/vendor/magento/framework/View/Element/Template.php(270): MagentoFrameworkViewTemplateEnginePhp->render(Object(MagentoConfigBlockSystemConfigEdit), '/p...', Array)
      #39 /public_html/vendor/magento/framework/View/Element/Template.php(300): MagentoFrameworkViewElementTemplate->fetchView('/p...')
      #40 /public_html/vendor/magento/module-backend/Block/Template.php(126): MagentoFrameworkViewElementTemplate->_toHtml()
      #41 /public_html/vendor/magento/framework/View/Element/AbstractBlock.php(667): MagentoBackendBlockTemplate->_toHtml()
      #42 /public_html/vendor/magento/framework/View/Layout.php(557): MagentoFrameworkViewElementAbstractBlock->toHtml()
      #43 /public_html/vendor/magento/framework/View/Layout.php(533): MagentoFrameworkViewLayout->_renderBlock('system.config.e...')
      #44 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('system.config.e...')
      #45 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('system.config.e...', false)
      #46 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('content', false)
      #47 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('content')
      #48 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('content', false)
      #49 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('admin.scope.col...', false)
      #50 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('admin.scope.col...')
      #51 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('admin.scope.col...', false)
      #52 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('main.col', false)
      #53 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('main.col')
      #54 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('main.col', false)
      #55 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('page.main.conta...', false)
      #56 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('page.main.conta...')
      #57 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('page.main.conta...', false)
      #58 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('page.content', false)
      #59 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('page.content')
      #60 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('page.content', false)
      #61 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('page.wrapper', false)
      #62 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('page.wrapper')
      #63 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('page.wrapper', false)
      #64 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('backend.page', false)
      #65 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('backend.page')
      #66 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('backend.page', false)
      #67 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('root', false)
      #68 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('root')
      #69 /public_html/vendor/magento/framework/View/Layout.php(954): MagentoFrameworkViewLayout->renderElement('root')
      #70 /public_html/generated/code/Magento/Framework/View/Layout/Interceptor.php(37): MagentoFrameworkViewLayout->getOutput()
      #71 /public_html/vendor/magento/framework/View/Result/Page.php(257): MagentoFrameworkViewLayoutInterceptor->getOutput()
      #72 /public_html/vendor/magento/framework/View/Result/Layout.php(170): MagentoFrameworkViewResultPage->render(Object(MagentoFrameworkAppResponseHttpInterceptor))
      #73 /public_html/generated/code/Magento/Backend/Model/View/Result/Page/Interceptor.php(24): MagentoFrameworkViewResultLayout->renderResult(Object(MagentoFrameworkAppResponseHttpInterceptor))
      #74 /public_html/vendor/magento/framework/App/Http.php(139): MagentoBackendModelViewResultPageInterceptor->renderResult(Object(MagentoFrameworkAppResponseHttpInterceptor))
      #75 /public_html/vendor/magento/framework/App/Bootstrap.php(257): MagentoFrameworkAppHttp->launch()
      #76 /public_html/index.php(39): MagentoFrameworkAppBootstrap->run(Object(MagentoFrameworkAppHttpInterceptor))
      #77 main


      CustomerMap.php code as below



      <?php
      /**
      * mc-magento2 Magento Component
      *
      * @category Ebizmarts
      * @package mc-magento2
      * @author Ebizmarts Team <info@ebizmarts.com>
      * @copyright Ebizmarts (http://ebizmarts.com)
      * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
      * @date: 10/27/17 12:01 PM
      * @file: CustomerMap.php
      */

      namespace EbizmartsMailChimpBlockAdminhtmlSystemConfigFormField;

      class CustomerMap extends MagentoConfigBlockSystemConfigFormFieldFieldArrayAbstractFieldArray

      /**
      * @var VarsMap
      */
      protected $_varsRenderer=null;
      protected $_mailchimpRenderer=null;

      protected function _getVarsRenderer()

      if (!$this->_varsRenderer)
      $this->_varsRenderer = $this->getLayout()->createBlock(
      'EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldVarsMap',
      '',
      ['data' => ['is_render_to_js_template' => true]]
      );
      $this->_varsRenderer->setClass('customer_field_select');

      return $this->_varsRenderer;

      protected function _getMailchimpRenderer()

      if (!$this->_mailchimpRenderer)
      $this->_mailchimpRenderer = $this->getLayout()->createBlock(
      'EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldMailchimpMap',
      '',
      ['data' => ['is_render_to_js_template' => true]]
      );
      $this->_mailchimpRenderer->setClass('mailchimp_field_select');

      return $this->_mailchimpRenderer;


      protected function _prepareToRender()

      // $this->addColumn('mailchimp', ['label' => __('Mailchimp')]);
      $this->addColumn(
      'mailchimp_field_id',
      ['label' => __('Mailchimp'), 'renderer' => $this->_getMailchimpRenderer()]
      );
      $this->addColumn(
      'customer_field_id',
      ['label' => __('Magento'), 'renderer' => $this->_getVarsRenderer()]
      );
      $this->_addAfter = false;
      $this->_addButtonLabel = __('Add');

      protected function _prepareArrayRow(MagentoFrameworkDataObject $row)

      $optionExtraAttr = [];
      $optionExtraAttr['option_' . $this->_getVarsRenderer()->calcOptionHash($row->getData('customer_field_id'))] =
      'selected="selected"';
      //$optionExtraAttr['option_' . $this->_getMailchimpRenderer()->calcOptionHash($row->getData('mailchimp_field_id'))] =
      // 'selected="selected"';
      $row->setData(
      'option_extra_attrs',
      $optionExtraAttr
      );




      var/xxx.php.error.log



      [21-Mar-2019 06:54:52 UTC] PHP Fatal error: Uncaught Error: Call to undefined method EbizmartsMailChimpHelperData::serialize() in /public_html/vendor/mailchimp/mc-magento2/Helper/VarsMap.php:99 Stack trace:
      #0 /public_html/vendor/mailchimp/mc-magento2/Helper/VarsMap.php(49): EbizmartsMailChimpHelperVarsMap->serializeValue(Array)
      #1 /public_html/vendor/mailchimp/mc-magento2/Model/Config/Backend/VarsMap.php(71): EbizmartsMailChimpHelperVarsMap->makeStorableArrayFieldValue(Array)
      #2 /public_html/vendor/magento/framework/Model/ResourceModel/Db/AbstractDb.php(406): EbizmartsMailChimpModelConfigBackendVarsMap->beforeSave()
      #3 /public_html/vendor/magento/framework/Model/AbstractModel.php(647): MagentoFrameworkModelResourceModelDbAbstractDb->save(Object(EbizmartsMailChimpModelConfigBackendVarsMapInterceptor))
      #4 /public_html/vendor/magento/framework/DB/Transaction.php(129): MagentoFrameworkModelAbstractModel->save()
      #5 /public_html/vendor/mage in /public_html/vendor/mailchimp/mc-magento2/Helper/VarsMap.php on line 99


      VarsMap.php as below



      <?php
      /**
      * mc-magento2 Magento Component
      *
      * @category Ebizmarts
      * @package mc-magento2
      * @author Ebizmarts Team <info@ebizmarts.com>
      * @copyright Ebizmarts (http://ebizmarts.com)
      * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
      * @date: 10/27/17 3:41 PM
      * @file: VarsMap.php
      */

      namespace EbizmartsMailChimpBlockAdminhtmlSystemConfigFormField;

      class VarsMap extends MagentoFrameworkViewElementHtmlSelect

      /**
      * @var MagentoCustomerModelResourceModelAttributeCollectionFactory
      */
      private $_attCollection;
      /**
      * VarsMap constructor.
      * @param MagentoFrameworkViewElementContext $context
      * @param MagentoCustomerModelResourceModelAttributeCollectionFactory $attCollection
      * @param array $data
      */
      public function __construct(
      MagentoFrameworkViewElementContext $context,
      MagentoCustomerModelResourceModelAttributeCollectionFactory $attCollection,
      array $data = []
      )

      parent::__construct($context, $data);
      $this->_attCollection = $attCollection;


      protected function _getCustomerAtt()

      $ret = [];
      $collection = $this->_attCollection->create();
      /**
      * @var $item MagentoCustomerModelAttribute
      */
      foreach ($collection as $item)
      $ret[$item->getId()] = $item->getFrontendLabel();


      natsort($ret);
      return $ret;


      public function setInputName($value)

      return $this->setName($value);


      /**
      * Render block HTML
      *
      * @return string
      */
      public function _toHtml()

      if (!$this->getOptions())
      foreach ($this->_getCustomerAtt() as $attId => $attLabel)
      $this->addOption($attId, addslashes($attLabel));


      return parent::_toHtml();











      share|improve this question

















      Exception #0 (Exception): Notice: Array to string conversion in
      /public_html/vendor/magento/framework/View/Element/Html/Select.php on
      line 244




      line 235-244 of the Select.php



      public function calcOptionHash($optionValue)

      return sprintf('%u', crc32($this->getName() . $this->getId() . $optionValue));



      this is when i try to go to mailchimp configuration tab on the admin page.



      full exception message here:



      Exception #0 (Exception): Notice: Array to string conversion in /public_html/vendor/magento/framework/View/Element/Html/Select.php on line 243
      #0 /public_html/vendor/magento/framework/View/Element/Html/Select.php(243): MagentoFrameworkAppErrorHandler->handler(8, 'Array to string...', '/p...', 243, Array)
      #1 /public_html/vendor/mailchimp/mc-magento2/Block/Adminhtml/System/Config/Form/Field/CustomerMap.php(68): MagentoFrameworkViewElementHtmlSelect->calcOptionHash(Array)
      #2 /public_html/vendor/magento/module-config/Block/System/Config/Form/Field/FieldArray/AbstractFieldArray.php(159): EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldCustomerMap->_prepareArrayRow(Object(MagentoFrameworkDataObject))
      #3 /public_html/vendor/magento/module-config/view/adminhtml/templates/system/config/form/field/array.phtml(117): MagentoConfigBlockSystemConfigFormFieldFieldArrayAbstractFieldArray->getArrayRows()
      #4 /public_html/vendor/magento/framework/View/TemplateEngine/Php.php(59): include('/p...')
      #5 /public_html/vendor/magento/framework/View/Element/Template.php(270): MagentoFrameworkViewTemplateEnginePhp->render(Object(EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldCustomerMapInterceptor), '/p...', Array)
      #6 /public_html/vendor/magento/framework/View/Element/Template.php(300): MagentoFrameworkViewElementTemplate->fetchView('/p...')
      #7 /public_html/vendor/magento/module-backend/Block/Template.php(126): MagentoFrameworkViewElementTemplate->_toHtml()
      #8 /public_html/vendor/magento/module-config/Block/System/Config/Form/Field/FieldArray/AbstractFieldArray.php(262): MagentoBackendBlockTemplate->_toHtml()
      #9 /public_html/vendor/magento/module-config/Block/System/Config/Form/Field/FieldArray/AbstractFieldArray.php(116): MagentoConfigBlockSystemConfigFormFieldFieldArrayAbstractFieldArray->_toHtml()
      #10 /public_html/vendor/magento/module-config/Block/System/Config/Form/Field.php(73): MagentoConfigBlockSystemConfigFormFieldFieldArrayAbstractFieldArray->_getElementHtml(Object(MagentoFrameworkDataFormElementText))
      #11 /public_html/vendor/magento/module-config/Block/System/Config/Form/Field.php(52): MagentoConfigBlockSystemConfigFormField->_renderValue(Object(MagentoFrameworkDataFormElementText))
      #12 /public_html/vendor/magento/framework/Interception/Interceptor.php(58): MagentoConfigBlockSystemConfigFormField->render(Object(MagentoFrameworkDataFormElementText))
      #13 /public_html/vendor/magento/framework/Interception/Interceptor.php(138): EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldCustomerMapInterceptor->___callParent('render', Array)
      #14 /public_html/vendor/magento/framework/Interception/Interceptor.php(153): EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldCustomerMapInterceptor->MagentoFrameworkInterceptionclosure(Object(MagentoFrameworkDataFormElementText))
      #15 /public_html/generated/code/Ebizmarts/MailChimp/Block/Adminhtml/System/Config/Form/Field/CustomerMap/Interceptor.php(26): EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldCustomerMapInterceptor->___callPlugins('render', Array, Array)
      #16 /public_html/vendor/magento/framework/Data/Form/Element/AbstractElement.php(459): EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldCustomerMapInterceptor->render(Object(MagentoFrameworkDataFormElementText))
      #17 /public_html/vendor/magento/framework/Data/Form/Element/Text.php(43): MagentoFrameworkDataFormElementAbstractElement->getHtml()
      #18 /public_html/vendor/magento/framework/Data/Form/Element/AbstractElement.php(473): MagentoFrameworkDataFormElementText->getHtml()
      #19 /public_html/vendor/magento/module-config/Block/System/Config/Form/Fieldset.php(86): MagentoFrameworkDataFormElementAbstractElement->toHtml()
      #20 /public_html/vendor/magento/module-config/Block/System/Config/Form/Fieldset.php(66): MagentoConfigBlockSystemConfigFormFieldset->_getChildrenElementsHtml(Object(MagentoFrameworkDataFormElementFieldset))
      #21 /public_html/vendor/magento/framework/Data/Form/Element/AbstractElement.php(459): MagentoConfigBlockSystemConfigFormFieldset->render(Object(MagentoFrameworkDataFormElementFieldset))
      #22 /public_html/vendor/magento/framework/Data/Form/Element/AbstractElement.php(473): MagentoFrameworkDataFormElementAbstractElement->getHtml()
      #23 /public_html/vendor/magento/framework/Data/Form.php(325): MagentoFrameworkDataFormElementAbstractElement->toHtml()
      #24 /public_html/vendor/magento/framework/Data/Form.php(340): MagentoFrameworkDataForm->toHtml()
      #25 /public_html/vendor/magento/module-backend/Block/Widget/Form.php(101): MagentoFrameworkDataForm->getHtml()
      #26 /public_html/vendor/magento/module-backend/view/adminhtml/templates/widget/form.phtml(15): MagentoBackendBlockWidgetForm->getFormHtml()
      #27 /public_html/vendor/magento/framework/View/TemplateEngine/Php.php(59): include('/p...')
      #28 /public_html/vendor/magento/framework/View/Element/Template.php(270): MagentoFrameworkViewTemplateEnginePhp->render(Object(MagentoConfigBlockSystemConfigForm), '/p...', Array)
      #29 /public_html/vendor/magento/framework/View/Element/Template.php(300): MagentoFrameworkViewElementTemplate->fetchView('/p...')
      #30 /public_html/vendor/magento/module-backend/Block/Template.php(126): MagentoFrameworkViewElementTemplate->_toHtml()
      #31 /public_html/vendor/magento/framework/View/Element/AbstractBlock.php(667): MagentoBackendBlockTemplate->_toHtml()
      #32 /public_html/vendor/magento/framework/View/Layout.php(557): MagentoFrameworkViewElementAbstractBlock->toHtml()
      #33 /public_html/vendor/magento/framework/View/Layout.php(533): MagentoFrameworkViewLayout->_renderBlock('system\config\f...')
      #34 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('system\config\f...')
      #35 /public_html/vendor/magento/framework/View/Element/AbstractBlock.php(507): MagentoFrameworkViewLayout->renderElement('system\config\f...', true)
      #36 /public_html/vendor/magento/module-config/view/adminhtml/templates/system/config/edit.phtml(22): MagentoFrameworkViewElementAbstractBlock->getChildHtml('form')
      #37 /public_html/vendor/magento/framework/View/TemplateEngine/Php.php(59): include('/p...')
      #38 /public_html/vendor/magento/framework/View/Element/Template.php(270): MagentoFrameworkViewTemplateEnginePhp->render(Object(MagentoConfigBlockSystemConfigEdit), '/p...', Array)
      #39 /public_html/vendor/magento/framework/View/Element/Template.php(300): MagentoFrameworkViewElementTemplate->fetchView('/p...')
      #40 /public_html/vendor/magento/module-backend/Block/Template.php(126): MagentoFrameworkViewElementTemplate->_toHtml()
      #41 /public_html/vendor/magento/framework/View/Element/AbstractBlock.php(667): MagentoBackendBlockTemplate->_toHtml()
      #42 /public_html/vendor/magento/framework/View/Layout.php(557): MagentoFrameworkViewElementAbstractBlock->toHtml()
      #43 /public_html/vendor/magento/framework/View/Layout.php(533): MagentoFrameworkViewLayout->_renderBlock('system.config.e...')
      #44 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('system.config.e...')
      #45 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('system.config.e...', false)
      #46 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('content', false)
      #47 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('content')
      #48 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('content', false)
      #49 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('admin.scope.col...', false)
      #50 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('admin.scope.col...')
      #51 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('admin.scope.col...', false)
      #52 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('main.col', false)
      #53 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('main.col')
      #54 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('main.col', false)
      #55 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('page.main.conta...', false)
      #56 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('page.main.conta...')
      #57 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('page.main.conta...', false)
      #58 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('page.content', false)
      #59 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('page.content')
      #60 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('page.content', false)
      #61 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('page.wrapper', false)
      #62 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('page.wrapper')
      #63 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('page.wrapper', false)
      #64 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('backend.page', false)
      #65 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('backend.page')
      #66 /public_html/vendor/magento/framework/View/Layout.php(585): MagentoFrameworkViewLayout->renderElement('backend.page', false)
      #67 /public_html/vendor/magento/framework/View/Layout.php(535): MagentoFrameworkViewLayout->_renderContainer('root', false)
      #68 /public_html/vendor/magento/framework/View/Layout.php(488): MagentoFrameworkViewLayout->renderNonCachedElement('root')
      #69 /public_html/vendor/magento/framework/View/Layout.php(954): MagentoFrameworkViewLayout->renderElement('root')
      #70 /public_html/generated/code/Magento/Framework/View/Layout/Interceptor.php(37): MagentoFrameworkViewLayout->getOutput()
      #71 /public_html/vendor/magento/framework/View/Result/Page.php(257): MagentoFrameworkViewLayoutInterceptor->getOutput()
      #72 /public_html/vendor/magento/framework/View/Result/Layout.php(170): MagentoFrameworkViewResultPage->render(Object(MagentoFrameworkAppResponseHttpInterceptor))
      #73 /public_html/generated/code/Magento/Backend/Model/View/Result/Page/Interceptor.php(24): MagentoFrameworkViewResultLayout->renderResult(Object(MagentoFrameworkAppResponseHttpInterceptor))
      #74 /public_html/vendor/magento/framework/App/Http.php(139): MagentoBackendModelViewResultPageInterceptor->renderResult(Object(MagentoFrameworkAppResponseHttpInterceptor))
      #75 /public_html/vendor/magento/framework/App/Bootstrap.php(257): MagentoFrameworkAppHttp->launch()
      #76 /public_html/index.php(39): MagentoFrameworkAppBootstrap->run(Object(MagentoFrameworkAppHttpInterceptor))
      #77 main


      CustomerMap.php code as below



      <?php
      /**
      * mc-magento2 Magento Component
      *
      * @category Ebizmarts
      * @package mc-magento2
      * @author Ebizmarts Team <info@ebizmarts.com>
      * @copyright Ebizmarts (http://ebizmarts.com)
      * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
      * @date: 10/27/17 12:01 PM
      * @file: CustomerMap.php
      */

      namespace EbizmartsMailChimpBlockAdminhtmlSystemConfigFormField;

      class CustomerMap extends MagentoConfigBlockSystemConfigFormFieldFieldArrayAbstractFieldArray

      /**
      * @var VarsMap
      */
      protected $_varsRenderer=null;
      protected $_mailchimpRenderer=null;

      protected function _getVarsRenderer()

      if (!$this->_varsRenderer)
      $this->_varsRenderer = $this->getLayout()->createBlock(
      'EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldVarsMap',
      '',
      ['data' => ['is_render_to_js_template' => true]]
      );
      $this->_varsRenderer->setClass('customer_field_select');

      return $this->_varsRenderer;

      protected function _getMailchimpRenderer()

      if (!$this->_mailchimpRenderer)
      $this->_mailchimpRenderer = $this->getLayout()->createBlock(
      'EbizmartsMailChimpBlockAdminhtmlSystemConfigFormFieldMailchimpMap',
      '',
      ['data' => ['is_render_to_js_template' => true]]
      );
      $this->_mailchimpRenderer->setClass('mailchimp_field_select');

      return $this->_mailchimpRenderer;


      protected function _prepareToRender()

      // $this->addColumn('mailchimp', ['label' => __('Mailchimp')]);
      $this->addColumn(
      'mailchimp_field_id',
      ['label' => __('Mailchimp'), 'renderer' => $this->_getMailchimpRenderer()]
      );
      $this->addColumn(
      'customer_field_id',
      ['label' => __('Magento'), 'renderer' => $this->_getVarsRenderer()]
      );
      $this->_addAfter = false;
      $this->_addButtonLabel = __('Add');

      protected function _prepareArrayRow(MagentoFrameworkDataObject $row)

      $optionExtraAttr = [];
      $optionExtraAttr['option_' . $this->_getVarsRenderer()->calcOptionHash($row->getData('customer_field_id'))] =
      'selected="selected"';
      //$optionExtraAttr['option_' . $this->_getMailchimpRenderer()->calcOptionHash($row->getData('mailchimp_field_id'))] =
      // 'selected="selected"';
      $row->setData(
      'option_extra_attrs',
      $optionExtraAttr
      );




      var/xxx.php.error.log



      [21-Mar-2019 06:54:52 UTC] PHP Fatal error: Uncaught Error: Call to undefined method EbizmartsMailChimpHelperData::serialize() in /public_html/vendor/mailchimp/mc-magento2/Helper/VarsMap.php:99 Stack trace:
      #0 /public_html/vendor/mailchimp/mc-magento2/Helper/VarsMap.php(49): EbizmartsMailChimpHelperVarsMap->serializeValue(Array)
      #1 /public_html/vendor/mailchimp/mc-magento2/Model/Config/Backend/VarsMap.php(71): EbizmartsMailChimpHelperVarsMap->makeStorableArrayFieldValue(Array)
      #2 /public_html/vendor/magento/framework/Model/ResourceModel/Db/AbstractDb.php(406): EbizmartsMailChimpModelConfigBackendVarsMap->beforeSave()
      #3 /public_html/vendor/magento/framework/Model/AbstractModel.php(647): MagentoFrameworkModelResourceModelDbAbstractDb->save(Object(EbizmartsMailChimpModelConfigBackendVarsMapInterceptor))
      #4 /public_html/vendor/magento/framework/DB/Transaction.php(129): MagentoFrameworkModelAbstractModel->save()
      #5 /public_html/vendor/mage in /public_html/vendor/mailchimp/mc-magento2/Helper/VarsMap.php on line 99


      VarsMap.php as below



      <?php
      /**
      * mc-magento2 Magento Component
      *
      * @category Ebizmarts
      * @package mc-magento2
      * @author Ebizmarts Team <info@ebizmarts.com>
      * @copyright Ebizmarts (http://ebizmarts.com)
      * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
      * @date: 10/27/17 3:41 PM
      * @file: VarsMap.php
      */

      namespace EbizmartsMailChimpBlockAdminhtmlSystemConfigFormField;

      class VarsMap extends MagentoFrameworkViewElementHtmlSelect

      /**
      * @var MagentoCustomerModelResourceModelAttributeCollectionFactory
      */
      private $_attCollection;
      /**
      * VarsMap constructor.
      * @param MagentoFrameworkViewElementContext $context
      * @param MagentoCustomerModelResourceModelAttributeCollectionFactory $attCollection
      * @param array $data
      */
      public function __construct(
      MagentoFrameworkViewElementContext $context,
      MagentoCustomerModelResourceModelAttributeCollectionFactory $attCollection,
      array $data = []
      )

      parent::__construct($context, $data);
      $this->_attCollection = $attCollection;


      protected function _getCustomerAtt()

      $ret = [];
      $collection = $this->_attCollection->create();
      /**
      * @var $item MagentoCustomerModelAttribute
      */
      foreach ($collection as $item)
      $ret[$item->getId()] = $item->getFrontendLabel();


      natsort($ret);
      return $ret;


      public function setInputName($value)

      return $this->setName($value);


      /**
      * Render block HTML
      *
      * @return string
      */
      public function _toHtml()

      if (!$this->getOptions())
      foreach ($this->_getCustomerAtt() as $attId => $attLabel)
      $this->addOption($attId, addslashes($attLabel));


      return parent::_toHtml();








      magento2 exception array mailchimp conversion






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Mar 21 at 7:04







      Kris Wen

















      asked Mar 20 at 22:47









      Kris WenKris Wen

      1268




      1268




















          2 Answers
          2






          active

          oldest

          votes


















          1














          It is an error of Mailchimp module just go to the below location




          Magento_root/vendor/mailchimp/mc-magento2/Block/Adminhtml/System/Config/Form/Field/CustomerMap.php




          On the line number 68 comment the below code



          $optionExtraAttr['option_' . $this->_getMailchimpRenderer()->calcOptionHash($row->getData('mailchimp_field_id'))] =
          'selected="selected"';


          Since initially your Magento store is not connected with the Mailchimp so it is not able to fetch the Mailchimp field values & that's why it is giving error.



          Please refer this






          share|improve this answer























          • Hi, I tried comment out the line 68 & 69. but when i tried to save at the configuration page. i still get the error page HTTP Error 500. any solution to that? thanks

            – Kris Wen
            Mar 21 at 6:01











          • 500 error means there is some problem with the syntax or the code can you please update your code here?

            – ABHISHEK TRIPATHI
            Mar 21 at 6:13











          • i add the CustomerMap.php code in the question, thank you.

            – Kris Wen
            Mar 21 at 6:30






          • 1





            after i uninstall the mailchimp extension, remove mailchimp and mailchimp-lib from composer, then i install this version (for magento 2.2.x) "composer require mailchimp/mc-magento2:101.2.34" after that, i apply your solution above (comment out the line 68,69). Everything works now. I'll pick your answer as a solution, thank you

            – Kris Wen
            Mar 21 at 7:54












          • You are always welcome @KrisWen !! happy to help you :)!!

            – ABHISHEK TRIPATHI
            Mar 21 at 8:17


















          1














          The error says that the return data type in select is Array but it has been printed as a string. To resolve this, you have to change the way return type is printed using print_r function.






          share|improve this answer

























          • Hi, i tried that,but still getting the same error message. can you help? thanks.

            – Kris Wen
            Mar 21 at 6:04











          • you did like this return print_r('%u', crc32($this->getName() . $this->getId() . $optionValue)); ?

            – magefms
            Mar 21 at 6:05











          • yes, that's what i did.

            – Kris Wen
            Mar 21 at 6:28











          • I see no error on your CustomerMap.php code

            – magefms
            Mar 21 at 7:07






          • 2





            thanks, i replace with this version "mailchimp/mc-magento2:101.2.34" , then i had to apply the fix from @ABHISHEK TRIPATHI to get it work. thank you both.

            – Kris Wen
            Mar 21 at 7:57











          Your Answer








          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "479"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: false,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: null,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f266759%2fhow-to-resolve-exception-0-exception-notice-array-to-string-conversion-mail%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          2 Answers
          2






          active

          oldest

          votes








          2 Answers
          2






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          1














          It is an error of Mailchimp module just go to the below location




          Magento_root/vendor/mailchimp/mc-magento2/Block/Adminhtml/System/Config/Form/Field/CustomerMap.php




          On the line number 68 comment the below code



          $optionExtraAttr['option_' . $this->_getMailchimpRenderer()->calcOptionHash($row->getData('mailchimp_field_id'))] =
          'selected="selected"';


          Since initially your Magento store is not connected with the Mailchimp so it is not able to fetch the Mailchimp field values & that's why it is giving error.



          Please refer this






          share|improve this answer























          • Hi, I tried comment out the line 68 & 69. but when i tried to save at the configuration page. i still get the error page HTTP Error 500. any solution to that? thanks

            – Kris Wen
            Mar 21 at 6:01











          • 500 error means there is some problem with the syntax or the code can you please update your code here?

            – ABHISHEK TRIPATHI
            Mar 21 at 6:13











          • i add the CustomerMap.php code in the question, thank you.

            – Kris Wen
            Mar 21 at 6:30






          • 1





            after i uninstall the mailchimp extension, remove mailchimp and mailchimp-lib from composer, then i install this version (for magento 2.2.x) "composer require mailchimp/mc-magento2:101.2.34" after that, i apply your solution above (comment out the line 68,69). Everything works now. I'll pick your answer as a solution, thank you

            – Kris Wen
            Mar 21 at 7:54












          • You are always welcome @KrisWen !! happy to help you :)!!

            – ABHISHEK TRIPATHI
            Mar 21 at 8:17















          1














          It is an error of Mailchimp module just go to the below location




          Magento_root/vendor/mailchimp/mc-magento2/Block/Adminhtml/System/Config/Form/Field/CustomerMap.php




          On the line number 68 comment the below code



          $optionExtraAttr['option_' . $this->_getMailchimpRenderer()->calcOptionHash($row->getData('mailchimp_field_id'))] =
          'selected="selected"';


          Since initially your Magento store is not connected with the Mailchimp so it is not able to fetch the Mailchimp field values & that's why it is giving error.



          Please refer this






          share|improve this answer























          • Hi, I tried comment out the line 68 & 69. but when i tried to save at the configuration page. i still get the error page HTTP Error 500. any solution to that? thanks

            – Kris Wen
            Mar 21 at 6:01











          • 500 error means there is some problem with the syntax or the code can you please update your code here?

            – ABHISHEK TRIPATHI
            Mar 21 at 6:13











          • i add the CustomerMap.php code in the question, thank you.

            – Kris Wen
            Mar 21 at 6:30






          • 1





            after i uninstall the mailchimp extension, remove mailchimp and mailchimp-lib from composer, then i install this version (for magento 2.2.x) "composer require mailchimp/mc-magento2:101.2.34" after that, i apply your solution above (comment out the line 68,69). Everything works now. I'll pick your answer as a solution, thank you

            – Kris Wen
            Mar 21 at 7:54












          • You are always welcome @KrisWen !! happy to help you :)!!

            – ABHISHEK TRIPATHI
            Mar 21 at 8:17













          1












          1








          1







          It is an error of Mailchimp module just go to the below location




          Magento_root/vendor/mailchimp/mc-magento2/Block/Adminhtml/System/Config/Form/Field/CustomerMap.php




          On the line number 68 comment the below code



          $optionExtraAttr['option_' . $this->_getMailchimpRenderer()->calcOptionHash($row->getData('mailchimp_field_id'))] =
          'selected="selected"';


          Since initially your Magento store is not connected with the Mailchimp so it is not able to fetch the Mailchimp field values & that's why it is giving error.



          Please refer this






          share|improve this answer













          It is an error of Mailchimp module just go to the below location




          Magento_root/vendor/mailchimp/mc-magento2/Block/Adminhtml/System/Config/Form/Field/CustomerMap.php




          On the line number 68 comment the below code



          $optionExtraAttr['option_' . $this->_getMailchimpRenderer()->calcOptionHash($row->getData('mailchimp_field_id'))] =
          'selected="selected"';


          Since initially your Magento store is not connected with the Mailchimp so it is not able to fetch the Mailchimp field values & that's why it is giving error.



          Please refer this







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Mar 21 at 3:57









          ABHISHEK TRIPATHIABHISHEK TRIPATHI

          2,0141728




          2,0141728












          • Hi, I tried comment out the line 68 & 69. but when i tried to save at the configuration page. i still get the error page HTTP Error 500. any solution to that? thanks

            – Kris Wen
            Mar 21 at 6:01











          • 500 error means there is some problem with the syntax or the code can you please update your code here?

            – ABHISHEK TRIPATHI
            Mar 21 at 6:13











          • i add the CustomerMap.php code in the question, thank you.

            – Kris Wen
            Mar 21 at 6:30






          • 1





            after i uninstall the mailchimp extension, remove mailchimp and mailchimp-lib from composer, then i install this version (for magento 2.2.x) "composer require mailchimp/mc-magento2:101.2.34" after that, i apply your solution above (comment out the line 68,69). Everything works now. I'll pick your answer as a solution, thank you

            – Kris Wen
            Mar 21 at 7:54












          • You are always welcome @KrisWen !! happy to help you :)!!

            – ABHISHEK TRIPATHI
            Mar 21 at 8:17

















          • Hi, I tried comment out the line 68 & 69. but when i tried to save at the configuration page. i still get the error page HTTP Error 500. any solution to that? thanks

            – Kris Wen
            Mar 21 at 6:01











          • 500 error means there is some problem with the syntax or the code can you please update your code here?

            – ABHISHEK TRIPATHI
            Mar 21 at 6:13











          • i add the CustomerMap.php code in the question, thank you.

            – Kris Wen
            Mar 21 at 6:30






          • 1





            after i uninstall the mailchimp extension, remove mailchimp and mailchimp-lib from composer, then i install this version (for magento 2.2.x) "composer require mailchimp/mc-magento2:101.2.34" after that, i apply your solution above (comment out the line 68,69). Everything works now. I'll pick your answer as a solution, thank you

            – Kris Wen
            Mar 21 at 7:54












          • You are always welcome @KrisWen !! happy to help you :)!!

            – ABHISHEK TRIPATHI
            Mar 21 at 8:17
















          Hi, I tried comment out the line 68 & 69. but when i tried to save at the configuration page. i still get the error page HTTP Error 500. any solution to that? thanks

          – Kris Wen
          Mar 21 at 6:01





          Hi, I tried comment out the line 68 & 69. but when i tried to save at the configuration page. i still get the error page HTTP Error 500. any solution to that? thanks

          – Kris Wen
          Mar 21 at 6:01













          500 error means there is some problem with the syntax or the code can you please update your code here?

          – ABHISHEK TRIPATHI
          Mar 21 at 6:13





          500 error means there is some problem with the syntax or the code can you please update your code here?

          – ABHISHEK TRIPATHI
          Mar 21 at 6:13













          i add the CustomerMap.php code in the question, thank you.

          – Kris Wen
          Mar 21 at 6:30





          i add the CustomerMap.php code in the question, thank you.

          – Kris Wen
          Mar 21 at 6:30




          1




          1





          after i uninstall the mailchimp extension, remove mailchimp and mailchimp-lib from composer, then i install this version (for magento 2.2.x) "composer require mailchimp/mc-magento2:101.2.34" after that, i apply your solution above (comment out the line 68,69). Everything works now. I'll pick your answer as a solution, thank you

          – Kris Wen
          Mar 21 at 7:54






          after i uninstall the mailchimp extension, remove mailchimp and mailchimp-lib from composer, then i install this version (for magento 2.2.x) "composer require mailchimp/mc-magento2:101.2.34" after that, i apply your solution above (comment out the line 68,69). Everything works now. I'll pick your answer as a solution, thank you

          – Kris Wen
          Mar 21 at 7:54














          You are always welcome @KrisWen !! happy to help you :)!!

          – ABHISHEK TRIPATHI
          Mar 21 at 8:17





          You are always welcome @KrisWen !! happy to help you :)!!

          – ABHISHEK TRIPATHI
          Mar 21 at 8:17













          1














          The error says that the return data type in select is Array but it has been printed as a string. To resolve this, you have to change the way return type is printed using print_r function.






          share|improve this answer

























          • Hi, i tried that,but still getting the same error message. can you help? thanks.

            – Kris Wen
            Mar 21 at 6:04











          • you did like this return print_r('%u', crc32($this->getName() . $this->getId() . $optionValue)); ?

            – magefms
            Mar 21 at 6:05











          • yes, that's what i did.

            – Kris Wen
            Mar 21 at 6:28











          • I see no error on your CustomerMap.php code

            – magefms
            Mar 21 at 7:07






          • 2





            thanks, i replace with this version "mailchimp/mc-magento2:101.2.34" , then i had to apply the fix from @ABHISHEK TRIPATHI to get it work. thank you both.

            – Kris Wen
            Mar 21 at 7:57















          1














          The error says that the return data type in select is Array but it has been printed as a string. To resolve this, you have to change the way return type is printed using print_r function.






          share|improve this answer

























          • Hi, i tried that,but still getting the same error message. can you help? thanks.

            – Kris Wen
            Mar 21 at 6:04











          • you did like this return print_r('%u', crc32($this->getName() . $this->getId() . $optionValue)); ?

            – magefms
            Mar 21 at 6:05











          • yes, that's what i did.

            – Kris Wen
            Mar 21 at 6:28











          • I see no error on your CustomerMap.php code

            – magefms
            Mar 21 at 7:07






          • 2





            thanks, i replace with this version "mailchimp/mc-magento2:101.2.34" , then i had to apply the fix from @ABHISHEK TRIPATHI to get it work. thank you both.

            – Kris Wen
            Mar 21 at 7:57













          1












          1








          1







          The error says that the return data type in select is Array but it has been printed as a string. To resolve this, you have to change the way return type is printed using print_r function.






          share|improve this answer















          The error says that the return data type in select is Array but it has been printed as a string. To resolve this, you have to change the way return type is printed using print_r function.







          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited Mar 21 at 1:20

























          answered Mar 21 at 1:11









          magefmsmagefms

          2,1342426




          2,1342426












          • Hi, i tried that,but still getting the same error message. can you help? thanks.

            – Kris Wen
            Mar 21 at 6:04











          • you did like this return print_r('%u', crc32($this->getName() . $this->getId() . $optionValue)); ?

            – magefms
            Mar 21 at 6:05











          • yes, that's what i did.

            – Kris Wen
            Mar 21 at 6:28











          • I see no error on your CustomerMap.php code

            – magefms
            Mar 21 at 7:07






          • 2





            thanks, i replace with this version "mailchimp/mc-magento2:101.2.34" , then i had to apply the fix from @ABHISHEK TRIPATHI to get it work. thank you both.

            – Kris Wen
            Mar 21 at 7:57

















          • Hi, i tried that,but still getting the same error message. can you help? thanks.

            – Kris Wen
            Mar 21 at 6:04











          • you did like this return print_r('%u', crc32($this->getName() . $this->getId() . $optionValue)); ?

            – magefms
            Mar 21 at 6:05











          • yes, that's what i did.

            – Kris Wen
            Mar 21 at 6:28











          • I see no error on your CustomerMap.php code

            – magefms
            Mar 21 at 7:07






          • 2





            thanks, i replace with this version "mailchimp/mc-magento2:101.2.34" , then i had to apply the fix from @ABHISHEK TRIPATHI to get it work. thank you both.

            – Kris Wen
            Mar 21 at 7:57
















          Hi, i tried that,but still getting the same error message. can you help? thanks.

          – Kris Wen
          Mar 21 at 6:04





          Hi, i tried that,but still getting the same error message. can you help? thanks.

          – Kris Wen
          Mar 21 at 6:04













          you did like this return print_r('%u', crc32($this->getName() . $this->getId() . $optionValue)); ?

          – magefms
          Mar 21 at 6:05





          you did like this return print_r('%u', crc32($this->getName() . $this->getId() . $optionValue)); ?

          – magefms
          Mar 21 at 6:05













          yes, that's what i did.

          – Kris Wen
          Mar 21 at 6:28





          yes, that's what i did.

          – Kris Wen
          Mar 21 at 6:28













          I see no error on your CustomerMap.php code

          – magefms
          Mar 21 at 7:07





          I see no error on your CustomerMap.php code

          – magefms
          Mar 21 at 7:07




          2




          2





          thanks, i replace with this version "mailchimp/mc-magento2:101.2.34" , then i had to apply the fix from @ABHISHEK TRIPATHI to get it work. thank you both.

          – Kris Wen
          Mar 21 at 7:57





          thanks, i replace with this version "mailchimp/mc-magento2:101.2.34" , then i had to apply the fix from @ABHISHEK TRIPATHI to get it work. thank you both.

          – Kris Wen
          Mar 21 at 7:57

















          draft saved

          draft discarded
















































          Thanks for contributing an answer to Magento Stack Exchange!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f266759%2fhow-to-resolve-exception-0-exception-notice-array-to-string-conversion-mail%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Identifying “long and narrow” polygons in with PostGISlength and width of polygonWhy postgis st_overlaps reports Qgis' “avoid intersections” generated polygon as overlapping with others?Adjusting polygons to boundary and filling holesDrawing polygons with fixed area?How to remove spikes in Polygons with PostGISDeleting sliver polygons after difference operation in QGIS?Snapping boundaries in PostGISSplit polygon into parts adding attributes based on underlying polygon in QGISSplitting overlap between polygons and assign to nearest polygon using PostGIS?Expanding polygons and clipping at midpoint?Removing Intersection of Buffers in Same Layers

          Masuk log Menu navigasi

          อาณาจักร (ชีววิทยา) ดูเพิ่ม อ้างอิง รายการเลือกการนำทาง10.1086/39456810.5962/bhl.title.447410.1126/science.163.3863.150576276010.1007/BF01796092408502"Phylogenetic structure of the prokaryotic domain: the primary kingdoms"10.1073/pnas.74.11.5088432104270744"Towards a natural system of organisms: proposal for the domains Archaea, Bacteria, and Eucarya"1990PNAS...87.4576W10.1073/pnas.87.12.4576541592112744PubMedJump the queueexpand by handPubMedJump the queueexpand by handPubMedJump the queueexpand by hand"A revised six-kingdom system of life"10.1111/j.1469-185X.1998.tb00030.x9809012"Only six kingdoms of life"10.1098/rspb.2004.2705169172415306349"Kingdoms Protozoa and Chromista and the eozoan root of the eukaryotic tree"10.1098/rsbl.2009.0948288006020031978เพิ่มข้อมูล