PHP MailChimp生日字段的日期格式 - 什么格式正确?

时间:2014-11-20 00:30:45

标签: php api datetime format mailchimp

我正在尝试用他的生日更新订阅者,但它不会接受我输入的任何格式。

我试过了:

date('d/m/Y', time());
date('d/m', time());
date('m/d', time());

出了什么问题?他们的API文档说:

  

"出生的月份和日期,以MM / DD"

传递

  

可选仅对生日和日期字段有效。对于生日类型,   必须是" MM / DD" (默认)或" DD / MM"。对于日期类型,必须是   " MM / DD / YYYY" (默认)或" DD / MM / YYYY"。任何其他值都将是   转换为默认值。

但它不会工作!导入时,生日字段为空白。

4 个答案:

答案 0 :(得分:2)

可能为时已晚,但对于其他搜索...我发现API需要输入日期格式为Y-m-d。

列表字段数据配置只是一种显示它的格式。

这对我有用。

答案 1 :(得分:0)

这是我实施它的方式:

$merge_vars = array( 'EMAIL' => $email,
                     'FNAME' => $name,
                     'BIRTH_DATE' => $dateMonth . '/' . $dateDay );

答案 2 :(得分:0)

对于当前的Mailchimp API版本(v3),格式必须为:

 <?php

 $birthday = date('n/j/Y');

因此,这将生成类似 1/22/2019

的信息。

答案 3 :(得分:0)

Mailchimp API v3 需要 MM/DD 格式,在 PHP 中它看起来像这样:

$email = 'example@email.com';
$birthday = '16-02-1980'; // dd-mm-YYYY format or any format you'd like

$merge_fields = [
    'EMAIL' => $email,
    'BIRTHDAY' => $birthday ? date('m/d', strtotime($birthday)) : '',
];

我们还需要检查是否设置了 $birthday,因为在发送 {{1 }} 它保持空白。