Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/235.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 传递给Google_Service_Gmail_UsersMessages_Resource::send()的参数2必须是Google_Service_Gmail_Message的实例,字符串为_Php_Laravel_Gmail Api - Fatal编程技术网

Php 传递给Google_Service_Gmail_UsersMessages_Resource::send()的参数2必须是Google_Service_Gmail_Message的实例,字符串为

Php 传递给Google_Service_Gmail_UsersMessages_Resource::send()的参数2必须是Google_Service_Gmail_Message的实例,字符串为,php,laravel,gmail-api,Php,Laravel,Gmail Api,我正在与Laravel一起开发Gmail API 我得到了一个错误: 第2项论点已转交立法局 Google_Service_Gmail_UsersMessages_Resource::send()必须是 Google_服务_Gmail_消息实例,给定字符串 下面是Google\u Service\u Gmail\u Message的实例?。我在给字符串我应该给什么 我的代码是 public function sendMessage($message) { try { $client = $thi

我正在与Laravel一起开发Gmail API

我得到了一个错误:

第2项论点已转交立法局 Google_Service_Gmail_UsersMessages_Resource::send()必须是 Google_服务_Gmail_消息实例,给定字符串

下面是
Google\u Service\u Gmail\u Message
的实例?。我在给
字符串
我应该给什么

我的代码是

public function sendMessage($message) {
try {
$client = $this->getClient();
$service = new Google_Service_Gmail($client);
$userId = 'me';
$message = "test";
$message = $service->users_messages->send($userId, $message);
print 'Message with ID: ' . $message->getId() . ' sent.';
return $message;
} catch (Exception $e) {
 print 'An error occurred: ' . $e->getMessage();
}
}

带有两个参数的
send
方法位于
第7行

//使用PHPMailer准备邮件
$mail=new PHPMailer()
$mail->CharSet=“UTF-8”
$mail->Encoding=“base64”

//提供标题信息、正文等。
$mail->Subject=“你有邮件!”

//创建MIME消息
$mail->preSend()
$mime=$mail->getSentMIMEMessage()
$mime=rtrim(strtr(base64_encode($mime),“+/”、“-”、“=”)

//创建Gmail消息

$message=新的Google_服务_Gmail_消息()

$message->setRaw($mime)

$message=$service->users\u messages->send('me',$message)

方法
send()
,是
Google\u Service\u Gmail\u UsersMessages\u Resource
类的成员,调用时需要两个参数(或参数),其中一个(第二个)是
Google\u Service\u Gmail\u Message
类的实例。相反,您传递的是一个字符串。我只能通过阅读您的错误消息来说明这一点。如果您需要更多帮助,您需要共享生成此问题的代码。@Alan Machado,我正在处理的代码就在这里:
$message=$service->users\u messages->send($userId,$message),var消息是一个包含“test”的字符串,它应该是
Google\u Service\u Gmail\u消息的实例。您必须阅读API文档才能了解如何创建要发送的新消息(从
$message=new Google\u Service\u Gmail\u message();
开始),我以前是手动创建mime消息的,但您的答案似乎可以帮助我更新应用程序,以便高效地创建mime消息。干杯