【问题标题】:Sending email with attachment in cakephp file real path在 cakephp 文件真实路径中发送带有附件的电子邮件
【发布时间】:2016-04-06 03:08:14
【问题描述】:

我正在尝试使用cake php 发送电子邮件,这里是代码

   $data =  "RSIMT7210;RSIMT7220";

        $email = new CakeEmail();
        $var = ROOT;
        $var = str_replace("api", "", $var);

        $attachments = array();

        $myArray = explode(';', $data);
        foreach($myArray as $sku)
        {                    
            $result = $this->Ring->find('first', array('conditions'=>array('sku'=>$sku)));
            $ring = $result['Ring'];

            $ringItems = explode(' ', $ring['name']);            
            $styleNumber = $ringItems[0];

            $mAttach = $var . "rings/" . "$styleNumber/image/white.jpg";                    
            $email->attachments($mAttach);                     
        }

但它似乎只添加了一个附件。有什么办法可以附加多个文件?

【问题讨论】:

    标签: php email cakephp


    【解决方案1】:

    attachments() 方法允许您添加图像路径数组。像这样更改您的源代码

        $data =  "RSIMT7210;RSIMT7220";
        $email = new CakeEmail();
        $var = ROOT;
        $var = str_replace("api", "", $var);
    
        $attachments = array();
    
        $myArray = explode(';', $data);
        foreach($myArray as $sku)
        {                    
            $result = $this->Ring->find('first', array('conditions'=>array('sku'=>$sku)));
            $ring = $result['Ring'];
    
            $ringItems = explode(' ', $ring['name']);            
            $styleNumber = $ringItems[0];
    
            $mAttach = $var . "rings/" . "$styleNumber/image/white.jpg"; 
            $attachments[] =  $mAttach;                          
        }
        $email->attachments($attachments); 
    

    【讨论】:

    • print_r() 你的$attachments 数组并检查值,因为代码看起来没问题。
    • @WayNe ["\/home\/thevowaa\/public_html\/brandstore\/rings\/DFWR0109\/image\/white.jpg","\/home\/thevowaa\/public_html \/brandstore\/rings\/DFWR6537\/image\/white.jpg"] 这是数组
    【解决方案2】:

    好的,主要问题是所有附件都具有相同的名称。我必须使用不同的名称才能使其正常工作。现在我正在使用这个

    $attachments[$styleNumber . ".jpg"] = array(
                                                'file' => $mAttach,
                                                'mimetype' => 'image/png',
                                                'contentId' => $styleNumber
                                            );
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-15
      • 2015-09-09
      • 2017-09-06
      相关资源
      最近更新 更多