发送网格模板如何解析数组变量


SendGrid templates how to parse array variable?

我使用 SendGrid 并装箱模板并给出模板变量"name",如下所示:

为什么 add替换需要数组参数以及这个数组如何在模板中解析?

$name = array('Test');
//
->addSubstitution(":name", $name)

因为我使用 tqig 并发送所有模板,在 twig 中我有这样的良好算法化功能

{% for skill in project.projectSkills %}
{{ skill }}
{% endfor %}

如何在模板中执行此操作 发送网格 ?或者如何在模板中处理数组 发送网格 ?

templte in sendGrid:

Hello :name,
Hot work with array :skill ?
<%body%>
With Best Regards,
Your Library Tester

法典

    $sendgrid = new 'SendGrid($this->container->getParameter('sendgrid_key'));
    $email = new 'SendGrid'Email();
    $name = array('testName');
    $skills = array('skill1', 'skill2', 'skill3') ;
    $email
    ->addTo('myEmail@test.com')
    ->setFrom(''test@test.com)
    ->setFromName('Test')
    ->setSubject('subject')
    ->setText('I''m text!')
    ->setHtml('<strong>I''m HTML!</strong>')
    ->addFilter('templates', 'enabled', 1)
    ->addFilter('templates', 'template_id', $template_id)
    ->addSubstitution(":skill", $skill)
    ->addSubstitution(":name", $name);

    $result = $sendgrid->send($email);

SendGrid 模板引擎当前不支持枚举或条件,因此需要在传递内容之前执行该逻辑。使用分区标记可能很有意义。