在条带电子邮件说明中显示换行符

Jos*_*eta 6 php email stripe-payments

我在Stripe的电子邮件收据中显示换行符时遇到问题.通过PHP中生成的电子邮件和说明<br>,\r\n逐字显示.在此输入图像描述

我也试过,nl2br但是因为那显示<br>我肯定它不会起作用.

PHP

$detail = "$name\r\n";
$detail .= "Length: $length,";
$detail .= " Width: $width,";
$detail .= "Color: $color,";
$detail .= "Qty: $qty\r\n";
$detail .= "Price: $price\r\n";

echo nl2br($detail);
Run Code Online (Sandbox Code Playgroud)

如何使用PHP在Stripe电子邮件收据上显示换行符?

Cha*_*ser 6

编辑:在过去的几年中,Stripe似乎开始支持换行,请参阅对此答案的评论。


先前的答案:

我试图达到同样的目的,最终得到了他们的支持。简而言之:

  • HTML标记将始终转换为实体。
  • \n 将被忽略。

如我所见,在这些当前限制内,您有3个选择:

  1. 在长行上的项目中使用逗号(或其他):

    Shampoo - $5.00, Toothbrush - $2.00, Soap - $3.00 --------------- $10.00
    
    Run Code Online (Sandbox Code Playgroud)
  2. 发送您自己的电子邮件。

  3. 在Stripe中创建一个客户,然后根据需要创建任意数量的发票项目,然后创建发票,然后支付发票

这样确实会给您发票和收据电子邮件,如下所示:

 Shampoo ----- $5.00
 Toothbrush -- $2.00
 Soap -------- $3.00

 Total ------ $10.00
Run Code Online (Sandbox Code Playgroud)

但是第3点有1个警告。Stripe会自动为客户可能具有的所有未清发票项目和订阅计划创建发票。这种情况发生在应收发票的1小时前(这是根据您可能为计划设置的间隔而定,或者如果您只处理发票项目,可能会在本月底,我不确定后一种情况。)。这意味着从技术上讲,您可以让客户进行结账,从而在当前交易中向他们收取比预期更多的费用,这只是闻起来设计不良,并且无法解决一个简单的问题。

因此,对于当前项目,我坚持使用逗号分隔的项目在一行上,并且每当客户有预算为我们建造项目时,都使用自定义电子邮件。

  • 我刚刚发现,您可以在信息中心中修改费用说明,并保留换行符。因此,我通过API进行了测试,似乎在2014年至2018年之间,Stripe改变了这种行为-现在保留了换行符!:) (2认同)
  • 我还可以确认它现在接受\ n或&lt;br&gt;在费用说明中创建换行符。 (2认同)