Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过PHP包装器请求创建段API v3时出现问题_Php_Mailchimp Api V3.0 - Fatal编程技术网

通过PHP包装器请求创建段API v3时出现问题

通过PHP包装器请求创建段API v3时出现问题,php,mailchimp-api-v3.0,Php,Mailchimp Api V3.0,我已经使用您的PHP包装器对Mailchimp API v3进行了试驾。这对我来说非常有用,但当我使用“创建段”的帖子创建请求时,出现错误(附上屏幕截图): 请求代码为(通过关联数组)- 此请求调用返回以下错误- 数组(大小=2)“字段”=>string”选项。条件(长度=18) 'message'=>string'架构描述了数组,但找到了对象' (长度=44) 我还将尝试创建请求(通过关联数组)- 方法1: $api_key = "xxxxxxxxxxxxxxxx-us11"; $list_

我已经使用您的PHP包装器对Mailchimp API v3进行了试驾。这对我来说非常有用,但当我使用“创建段”的帖子创建请求时,出现错误(附上屏幕截图):

请求代码为(通过关联数组)-

此请求调用返回以下错误-

数组(大小=2)“字段”=>string”选项。条件(长度=18) 'message'=>string'架构描述了数组,但找到了对象' (长度=44)

我还将尝试创建请求(通过关联数组)-

方法1:

$api_key = "xxxxxxxxxxxxxxxx-us11";
$list_id = "1xx2xx3xx4xx";
$MailChimp = new MailChimp($api_key);
$result = $MailChimp->post('lists/' . $list_id . '/segments', array('name' => 'Testing Data',
    'options' => array('match' => 'all',
        'conditions' => array(array('field' => 'type', 'op' => 'is', 'value' => 'Testing')))
        ));
方法2:

$api_key = "xxxxxxxxxxxxxxxx-us11";
$list_id = "1xx2xx3xx4xx";
$MailChimp = new MailChimp($api_key);
$result = $MailChimp->post('lists/' . $list_id . '/segments', array('name' => 'Testing Data 4',
    'options' => array('match' => 'all',
        'conditions' => array(array('field' => 'type'), array('op' => 'is'), array('value' => 'Testing')))
        ));
这两种方法都将在mailchimp帐户上创建段,但没有任何条件。见截图-


如何覆盖此问题?

您缺少条件类型参数。它应该从端点文档中MailChimp提供的列表中选择。 例如,如果MailChimp列表中的字段“type”是文本字段,则应使用
“条件类型”:“TextMerge”
。在这种情况下,条件应具有以下格式:

[
    {
        'condition_type': 'TextMerge',
        'field': 'type',
        'op': 'is',
        'value': 'Testing'
    }
]
然而,MailChimp在这个端点中可能有一个bug,因为TextMerge只在EMAIL字段上工作。我最近也偶然发现了这个问题:


您缺少条件类型参数。它应该从端点文档中MailChimp提供的列表中选择。 例如,如果MailChimp列表中的字段“type”是文本字段,则应使用
“条件类型”:“TextMerge”
。在这种情况下,条件应具有以下格式:

[
    {
        'condition_type': 'TextMerge',
        'field': 'type',
        'op': 'is',
        'value': 'Testing'
    }
]
然而,MailChimp在这个端点中可能有一个bug,因为TextMerge只在EMAIL字段上工作。我最近也偶然发现了这个问题:


请尝试根据您的Segemnet类型命名方法1中的最后一个数组,例如:
“条件”=>array(“EmailAddress”=>array(“op”=>“foo”,…)
,查看文档->。@Andy:谢谢,但它没有解决我的问题。好的,对不起。愿你努力工作以达到预期的结果。试着简单地将一个值放入数组,然后是另一个数组或对象,只要是你脑海中出现的每一个组合,并试着获取
条件中的内容
-数组你可以试着根据你的Segemnet类型来命名方法1中的最后一个数组,例如:
“conditions”=>数组(“EmailAddress”=>数组(“op”=>“foo”,…)
,查看文档->。@Andy:谢谢,但这并不能解决我的问题。好的,对不起。愿你努力工作以达到预期的结果。尝试简单地将一个值放入数组,然后是另一个数组或一个对象,只要是您脑海中出现的每个组合,并尝试获取
条件中的内容