更新#2 - 最終答案 我想你會在下面的評論中看到我的比較符號需要更改。所以我采用了更新#1 中的代碼并簡單地更改了它:return filemtime($a) < filemtime($b);到:return filemtime($a) > filemtime($b);就是這樣!感謝大家的對話。更新 我已經更新了我的代碼?,F在我正在發送附件,但又一次,它沒有獲取最新的附件。這是我的最新代碼:<?phpini_set('display_errors',1);ini_set('display_startup_errors',1);error_reporting(-1);use PHPMailer\PHPMailer\PHPMailer;use PHPMailer\PHPMailer\Exception;require 'php/PHPMailer2020/src/Exception.php';require 'php/PHPMailer2020/src/PHPMailer.php';$dir = "php/sketch-drawings/";$pics = scandir($dir);$files = glob($dir . "*.*");usort($files, function($a, $b){ return filemtime($a) < filemtime($b);});foreach ($files as $pics) { echo '<img src="'. $pics . '">';}// SEND EMAIL W/ ATTACHMENT OF LATEST IMAGE $mail = new PHPMailer();$mail->Sender = "[email protected]";$mail->From = "[email protected]";$mail->FromName = "My Company";$mail->AddReplyTo( "[email protected]", "DO NOT REPLY" );//$mail->AddAddress("[email protected]");$mail->AddAddress("[email protected]");$mail->isHTML(true); $mail->Subject = "Latest Sketch Image";$mail->Body = "Latest Image Attached! \n\n Thanks - XYZ Digital.";$mail->AddAttachment($pics);if(!$mail->Send()) { echo 'Email Failed To Send.'; } else { echo 'Email Was Successfully Sent.'; echo "</p>"; echo '<script language="javascript">'; echo 'alert("Thanks! Message Sent")'; echo '</script>';}$mail->ClearAddresses();?> 這個問題: AddAttachment($filepath) 返回一個附件,但它不是最新的——我需要它始終返回目錄中的最新圖像。這就是我正在做的事情: 我已經創建了一個 Web 應用程序,它基本上是一個畫板。當用戶點擊“保存”時,代碼會捕捉元素的圖片,將其保存到目錄中,然后將畫布的快照作為附件發送到預定義的地址……問題就在上面。我所做的: 我到處尋找解決方案——似乎唯一的發現是通過網絡表單上傳附件——這不是我的問題。我的工作流程不同,為什么我現在在這里問。:)什么不起作用: 除了附件部分外,一切正常。我正在使用 PHPMailer,但由于某種原因,附件從來都不是最新的。事實上,不管怎樣,它似乎總是一樣的執著。我試圖獲取數組中的第一個元素來執行此操作(我在代碼底部回顯并返回正確的圖像:$mail->addAttachment($sketches[0]);這不起作用——它發送了電子郵件,但沒有附加任何內容。我究竟該如何調整下面的代碼以獲取最新的附件?感謝任何幫助,因為 PHP 不是我的專業領域。
添加回答
舉報
0/150
提交
取消