1

我想知道如何在电子邮件中发送数组。我正在使用 pre 标签在网页中对其进行格式化。但我无法在电子邮件中发送任何数据。这是我使用的控制器:

  <?php 


    class Notification extends CI_Controller {


    public function index()
        {


            $this->db->select('product_name,project_code'); 
     $this->db->from('user');
     $this->db->like('product_name', 'Test');   



     $array = $this->db->get()->result();
     $size = count($array); 

     echo 'The number of test are: ';
     echo $size;  
       echo '    ';
    echo "<pre>";
     print_r($array);
     echo "</pre>";

     $config = Array(
                  'protocol' => 'smtp',
                  'smtp_host' => 'ssl://smtp.googlemail.com',
                  'smtp_port' => 465,
                  'smtp_user' => 'Email',
                  'smtp_pass' => 'Password',
                  'mailtype'  => 'text', 
                  'charset'   => 'iso-8859-1'
                                  );
                    $this->load->library('email', $config);
                    $this->email->set_newline("\r\n");

                    // Set to, from, message, etc.
                     $this->email->from('sender', 'Name');
            $this->email->to('reciever'); 

            $this->email->subject(' Test Updates');

            $this->email->message($array);



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

    }




}

?>

我想在电子邮件中发送数组 $array ,其格式类似于 pre 标签。[注意:我已经编辑了电子邮件详细信息。其他电子邮件功能按预期工作]

4

3 回答 3

3

我不认为该message方法将数组作为参数。尝试

$this->email->message(print_r($array, true));
于 2013-07-20T14:00:30.157 回答
0

您是否定义了电子邮件接收者?like you@gmail.com 确定您可以使用的问题是什么

echo $this->email->print_debugger();
于 2013-07-22T05:01:11.833 回答
0

就像您或其他阅读此主题的人的替代选择一样。

您还可以为电子邮件创建一个视图文件,将数组作为数据传递。

在您的控制器中:

$data['my_array'] = $array;
$this->email->message($this->load->view('my_email', $data, TRUE));

在您的my_email.php视图中:

<pre><?php print_r($my_array);?></pre>
于 2013-07-22T01:17:13.850 回答