前提・実現したいこと
データを分析したshellで結果をCSVファイルで保存
そのファイルをメールで送信する
発生している問題・エラーメッセージ
Call to a member function setAttachments() on array in /var/www/system/src/Shell/xxxshell.php on 298
該当のソースコード
setAttachments()部分でエラー発生
・・・・ use Cake\Mailer\Email; ・・・・・ $filePath = realpath($file); print($filePath); // メール送信処理 $email = new Email("default"); // 入力者へのメール $email->setFrom(["from@example.com"=>"送信元名"]) ->setTo("xxxx.xxxx") ->setCc("xxxx.xxxx") ->setSubject("検知処理") ->send("データ不整合が疑われるユーザーをお知らせします。添付ファイルをご確認ください") ->setAttachments("'" . $filePath . "'"); }
試したこと
公式ドキュメント
https://book.cakephp.org/3/ja/core-libraries/email.html#id8
attachments()は3.4で非推奨となっていました。現在利用中のバージョンは3.5なのですが、一応以前のものを試してみました
ですが結果変わりませんでした
また、もともとtmpディレクトリにcsvファイルを作成していたのですが、保存先のディレクトリを変えてみました
/var/www/system/webroot/XXX/20200121123807.csv
ファイルパスはいずれも取得できている状態であると確認しましたが、ディレクトリを変更しても変わりませんでした
->setAttachments($filePath);
だったのを上記のような形式にすることもしてみましたが同じでした
パスを格納している変数は単一のもの(array形式でない)ですし、1件だけ添付したい場合パスだけ指定すれば良いという理解なのですが、CSVファイルの添付をしたい場合他に渡さなければならない情報はありますか?
補足情報(FW/ツールのバージョンなど)
cakephp3.5
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2020/01/21 08:34