sendgrid php api在';添加内容';用于if块

sendgrid php api在';添加内容';用于if块,php,email,html-email,sendgrid,Php,Email,Html Email,Sendgrid,我正在开发一个应用程序,我已经创建了一个用户注册系统。因此,当用户注册电子邮件并将其发送到帐户时,Im使用电子邮件类发送电子邮件。在使用sendgrid之前,我使用的是phpmailer,它在这种格式下工作得非常好,但它不适用于sendgrid。 因此,当我在没有if和else的情况下为“$type”使用此代码时,它可以完全正常工作,但不适用于if-else,页面加载永远不会结束 如果能帮上点忙,我们将不胜感激!! 这是密码 <?php class email { public f

我正在开发一个应用程序,我已经创建了一个用户注册系统。因此,当用户注册电子邮件并将其发送到帐户时,Im使用电子邮件类发送电子邮件。在使用sendgrid之前,我使用的是phpmailer,它在这种格式下工作得非常好,但它不适用于sendgrid。 因此,当我在没有if和else的情况下为“$type”使用此代码时,它可以完全正常工作,但不适用于if-else,页面加载永远不会结束

如果能帮上点忙,我们将不胜感激!! 这是密码

<?php

class email {
   public function sendEmail($name, $email, $url, $type, $subject){
    require '../../vendor/autoload.php'; // If you're using Composer (recommended)
    $email = new \SendGrid\Mail\Mail(); 
    $email->setFrom("mymail@gmail.com", "Example User");
    $email->setSubject($subject);
    $email->addTo($email, $name);
    if($type === "CONFIRM"){
      $email->addContent(
        'text/html', 'CONFIRM MESSAGE'
    );

    } else if($type === "FORGOT"){
      $email->addContent(
        'text/html', 'FORGOT MESSAGE'
      );

    }
    $apiKey = 'api_key';
    $sendgrid = new \SendGrid($apiKey);
    try {
        $response = $sendgrid->send($email);
        print $response->statusCode() . "\n";
        print_r($response->headers());
        print $response->body() . "\n";
    } catch (Exception $e) {
        echo 'Caught exception: '. $e->getMessage() ."\n";
    }




   }

}

?>


你能试着用“text/plain”代替“text/html”吗。另外,您确定$type的值为“忘记”或“确认”吗?仍然不起作用,是的,类型值为“确认”和“忘记”。如果你删除if..else并且只有一行,例如$email->addContent('text/html',CONFIRM MESSAGE'),那么你是否知道为什么不会发生这种情况;这样行吗?2) Try==在适当的位置===