Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/279.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 邮枪内联图像,它是如何工作的?_Php_Inline_Mailgun - Fatal编程技术网

Php 邮枪内联图像,它是如何工作的?

Php 邮枪内联图像,它是如何工作的?,php,inline,mailgun,Php,Inline,Mailgun,我正在与mailgun合作,希望将图像添加到我的新闻稿中。 现在我做到了: $mg->sendMessage($domain, array('from' => 'developer@mijnprojectgroep.eu', 'to' => 'developer@mijnprojectgroep.eu', 'subject' =&g

我正在与mailgun合作,希望将图像添加到我的新闻稿中。 现在我做到了:

$mg->sendMessage($domain, array('from'    => 'developer@mijnprojectgroep.eu', 
                                'to'      => 'developer@mijnprojectgroep.eu', 
                                'subject' => 'Developers Mail Test MijnProjectgroep batch #1', 
                                'text'    => 'Hallo %recipient_fname%,


                'html'    => '<html>
<img style="display:block;" class="img1" src="cid:header-clip.png" width="600" height="64" />
</html>',
array('inline' => '@.././images/newsletter/header-clip.png'),

'o:tracking-opens' => 'yes'));
$mg->sendMessage($domain,array('from'=>)developer@mijnprojectgroep.eu', 
'到'=>'developer@mijnprojectgroep.eu', 
“主题”=>“开发人员邮件测试MijnProjectgroep批处理#1”,
“text'=>”您好%recipient\u fname%,
'html'=>'
',
数组('inline'=>'@..//images/newsletter/header clip.png'),
'o:跟踪打开'=>'是');
但在我收到时事通讯时没有加载图像。 具有上述脚本的文档位于:

根-->/MailGun/

图像位于:

根-->/images/newsletter/

还尝试了:@.././images/newsletter/header-clip.png

文件如下:


我做错了什么?你没有做错。实际上,API文档中存在一个问题

在内联图像路径中,需要使用数组而不是字符串路径。它将解决这个问题。您可以这样添加它:

$mg->sendMessage($domain, array('from'    => 'developer@mijnprojectgroep.eu',
                                    'to'      => 'developer@mijnprojectgroep.eu', 
                                    'subject' => 'Developers Mail Test MijnProjectgroep batch #1',
                                    'text'    => 'Hallo %recipient_fname%,
                                    'html'    => '<html><img style="display:block;" class="img1" src="cid:header-clip.png" width="600" height="64" /></html>',
    array('inline' => array('@.././images/newsletter/header-clip.png') 
),
    'o:tracking-opens' => 'yes'));

你没有做错。实际上,API文档中存在一个问题

在内联图像路径中,需要使用数组而不是字符串路径。它将解决这个问题。您可以这样添加它:

$mg->sendMessage($domain, array('from'    => 'developer@mijnprojectgroep.eu',
                                    'to'      => 'developer@mijnprojectgroep.eu', 
                                    'subject' => 'Developers Mail Test MijnProjectgroep batch #1',
                                    'text'    => 'Hallo %recipient_fname%,
                                    'html'    => '<html><img style="display:block;" class="img1" src="cid:header-clip.png" width="600" height="64" /></html>',
    array('inline' => array('@.././images/newsletter/header-clip.png') 
),
    'o:tracking-opens' => 'yes'));

要附加的图像需要作为sendMessage方法的第三个参数传入:

    $mgClient->sendMessage("$domain",
              array('from'    => 'Mailgun Sandbox <postmaster@sandbox.mailgun.org>',
                    'to'      => 'mr awesome <mrawesome@web.com>',
                    'subject' => 'Hello Mr',
                    'html' => '<html><img style="display:block;" class="img1" src="cid:header-clip.png" width="600" height="64" /></html>'
              ),
              array (
                'inline' => array(dirname(__FILE__).'/images/newsletter/header-clip.png')
              )
      );
$mgClient->sendMessage($domain),
数组('from'=>'Mailgun Sandbox',
“致”=>“真棒先生”,
“主题”=>“你好,先生”,
'html'=>'
),
排列(
'inline'=>数组(dirname(_文件)。'/images/newsletter/header clip.png')
)
);
还要注意文件路径:
dirname(\uu file\uu)
。您可能需要更改此项以适应


Mailgun文档中还有一个示例,标题为“发送内联图像”-

需要将要附加的图像作为第三个参数传递给sendMessage方法:

    $mgClient->sendMessage("$domain",
              array('from'    => 'Mailgun Sandbox <postmaster@sandbox.mailgun.org>',
                    'to'      => 'mr awesome <mrawesome@web.com>',
                    'subject' => 'Hello Mr',
                    'html' => '<html><img style="display:block;" class="img1" src="cid:header-clip.png" width="600" height="64" /></html>'
              ),
              array (
                'inline' => array(dirname(__FILE__).'/images/newsletter/header-clip.png')
              )
      );
$mgClient->sendMessage($domain),
数组('from'=>'Mailgun Sandbox',
“致”=>“真棒先生”,
“主题”=>“你好,先生”,
'html'=>'
),
排列(
'inline'=>数组(dirname(_文件)。'/images/newsletter/header clip.png')
)
);
还要注意文件路径:
dirname(\uu file\uu)
。您可能需要更改此项以适应


Mailgun文档中也有一个示例,标题为“发送内联图像”-

为此,您只需输入以下详细信息:

$header = FCPATH."public_html/assets/img/newsletter_header.png";

$mg->messages()->send($domain, [
  'from'    => 'xxxxxxx@gmail.com',
  'to'      => 'yyyyy <yyyyyyyy@gmail.com>',
  'subject' => 'The PHP SDK is awesome!',
  'html'    =>  $html,
  'inline' => array(
    array('filePath' => $header)
  )
]);
$header=FCPATH.“public\u html/assets/img/newsletter\u header.png”;
$mg->messages()->send($domain[
'来自'=>'xxxxxxx@gmail.com',
'到'=>'yyyy',
'subject'=>'PHP SDK很棒!',
“html”=>$html,
'内联'=>数组(
数组('filePath'=>$header)
)
]);
在HTML代码中:

$imageName = "newsletter_header.png";
<img src="cid:'.$imageName.'" width="408" height="100" alt="Pedul" border="0"
class="em_w150" />
$imageName=“newsletter\u header.png”;
为此,您必须注意两点:

  • 在内联标签中添加图像的完整路径
  • 在HTML代码中只添加文件的图像名称

  • 为此,您只需输入以下详细信息:

    $header = FCPATH."public_html/assets/img/newsletter_header.png";
    
    $mg->messages()->send($domain, [
      'from'    => 'xxxxxxx@gmail.com',
      'to'      => 'yyyyy <yyyyyyyy@gmail.com>',
      'subject' => 'The PHP SDK is awesome!',
      'html'    =>  $html,
      'inline' => array(
        array('filePath' => $header)
      )
    ]);
    
    $header=FCPATH.“public\u html/assets/img/newsletter\u header.png”;
    $mg->messages()->send($domain[
    '来自'=>'xxxxxxx@gmail.com',
    '到'=>'yyyy',
    'subject'=>'PHP SDK很棒!',
    “html”=>$html,
    '内联'=>数组(
    数组('filePath'=>$header)
    )
    ]);
    
    在HTML代码中:

    $imageName = "newsletter_header.png";
    <img src="cid:'.$imageName.'" width="408" height="100" alt="Pedul" border="0"
    class="em_w150" />
    
    $imageName=“newsletter\u header.png”;
    
    为此,您必须注意两点:

  • 在内联标签中添加图像的完整路径
  • 在HTML代码中只添加文件的图像名称

  • 我也有同样的问题。你最后明白了吗?我也有同样的问题。你最后明白了吗?我可以发送一张嵌入图像。但我有多个嵌入式图像,然后如何才能做到这一点。我有一些文本内容,然后是图像,然后是文本,然后是图像。如何动态嵌入图像。您可以按照此链接查看如何发送完整的html:我可以发送单个嵌入图像。但我有多个嵌入式图像,然后如何才能做到这一点。我有一些文本内容,然后是图像,然后是文本,然后是图像。如何动态嵌入图像。您可以通过此链接查看如何发送完整的html:请格式化您的答案,并解释它与该问题的其他6岁答案的区别。请格式化您的答案,并解释它与该问题的其他6岁答案的区别。