1

我试图在通过 SendGrid 发送电子邮件时提取自定义参数,并在通过事件通知保存它们时将它们拉入我的数据库。

我有事件通知设置,因此在 SendGrid 处理电子邮件后,它将它保存到我的数据库中,我只是不知道如何提取我正在发送的自定义参数。

我发送这样的论点:

$mail->addCustomArg("campaign", "welcome69");

然后在尝试接收它时遇到问题(在 SendGrid 发布之后)

$data = file_get_contents("php://input");
$events = json_decode($data, true);

foreach ($events as $event) {
$sg_event_id = $event['sg_event_id'];
$unique_args = $event['unique_args'];
}

在底部代码片段中,变量 $unique_args 有效,第二个无效。任何帮助是极大的赞赏。

4

1 回答 1

2

什么SendgridPOSTs到你的钩子是一个 JSON Objectunique_args您可以通过编写类似的内容直接检索

$unique_args = $events['unique_args']; // this is an associative array.

您可以通过这种方式使用 foreach 循环遍历关联数组:

foreach($unique_args as $field => $value) {
}
于 2017-04-03T22:10:58.197 回答