2016-04-14 21 views
2

SendGrid PHPライブラリ(https://github.com/sendgrid/sendgrid-php)を使用して添付ファイルを送信しようとすると、機能が失敗します(白い画面)。 "setAttachment"行を削除すると、再び動作します。ここでSendGrid PHP(sendgrid-phpライブラリ)で添付ファイルを送信する

は私のコードです:

require "sendgrid-php/sendgrid-php.php"; 
function sendgrid() { 

    $recips = array("[email protected]"); 
    $categories = array("test"); 



    $sendgrid = new SendGrid("API key removed"); 

    $email = new SendGrid\Email(); 
    $email 
    ->setSmtpapiTos($recips) 
    ->setFrom('[email protected]') 
    ->setSubject('Testing Sendgrid') 
    ->setText('Hello World! Testing...') 
    ->setHtml('<strong>Hello World!</strong>') 
    ->setCategories($categories) 
    ->setAttachment('test.txt') 
    ; 


    //$sendgrid->send($email); 

    $res = $sendgrid->send($email); 

    var_dump($res); 
} 

sendgrid(); 

私の知る限り、私はマニュアルを参照して、以下のよ、私は正しくファイルへのパスをフォーマットしていない場合、私は疑問に思います。 "Test.txt"は、上記のコードを含むファイルと同じディレクトリにあります。

誰もが提案を提供できますか?

答えて

7

この

->setAttachment(realpath(dirname(__FILE__)).DIRECTORY_SEPARATOR.'test.txt'); 
+0

信じられないほどのを試してみてください、それが働きました!ありがとうございました!私はこれがドキュメントにあるべきものなのか、それとも私の環境特有のものなのか疑問に思います。 –

+0

絶対ファイルパスを使用する必要があります。私は、そのクラスファイルがそのパスを基準にファイルを探す可能性が高いと仮定しています。それが失敗したので見つけることができませんでしたが、絶対ファイルパスを提供することによって、sendgrid-php.phpファイルを開きたい場合は、どこに正確に – codenathan

+0

が表示されているかを知り、メソッドを探して、転送を学ぶ – codenathan

関連する問題