那个邮件发送会报错array_keys() expects parameter 1 to be array, null given

来源:6-7 建立计划任务定时离线发送队列中的邮件

喵喵清吟

2017-04-19

那个邮件发送会报错array_keys() expects parameter 1 to be array, null given

我直接用老师的代码也会报这样的错误。

所以问下为什么要用array_keys()?

http://szimg.mukewang.com/58f6c7480001169c10970666.jpg

写回答

2回答

Jason

2017-04-19

嗯,好的,抱歉,今天考试,刚看到

0
0

喵喵清吟

提问者

2017-04-19

我自己解决了,参见http://www.yiiframework.com/doc-2.0/yii-swiftmailer-message.html

,有说明from,to,cc等哪些是array,哪些是string,所以不应该都用array_keys,我修改后可以运行的代码如下,供有相同问题的人才参考:

$message = [];
$message['from'] = $this->getFrom();
$message['to'] = array_keys($this->getTo());
$message['cc'] = array_keys(empty($this->getCc()) ? [] : $this->getCc());
$message['bcc'] = array_keys(empty($this->getBcc()) ? [] : $this->getBcc());
$message['reply_to'] =  $this->getReplyTo();
$message['charset'] = $this->getCharset();
$message['subject'] = $this->getSubject();


2
0

Yii2.0进阶版 高级组件ES/Redis/Sentry优化京东平台

进阶更高阶的Yii 2.0开发,获得2-3年yii 2.0实战经验

514 学习 · 210 问题

查看课程