簡體   English   中英

PHP-發送一封延遲為x的電子郵件

[英]PHP - Send an e-mail with a delay of x time

我需要使用php代碼在x時間之后發送和發送電子郵件。

我不想使用cronjob。 因此,此代碼無法正常工作,因為它可以一次打印php代碼,並且不會像js那樣自動更改DOM。 但是我需要這樣的東西:

  $today = date('Y-m-d H:i:s');
  $dataorder = date("Y-m-d H:i:s", $order->created);
  $delay_days = 240;
  $senday = date('Y-m-d H:i:s', strtotime( "$dataorder + $delay_days min" ));

   if ($today == $senday) {

    echo "sent";

   } else {

    echo "not yet sent";

   }

現在,我可以使用js,但是我不確定這是否行得通,這個php腳本是后端中的一個全部php頁面。 所以,我只能使用php嗎? 喜歡使用睡眠功能嗎? 或其他

我不知道是最好的方法。

(具體來說,這是一種發送電子郵件以記住要在網站上留下贊譽的系統。)

謝謝

您可以這樣實現,

  1. 當您擁有用戶的數據時,您就會知道特定用戶的注冊日期。

  2. 編寫一個每天執行的腳本,並選擇5天前所有已注冊用戶的腳本。 郵件將被發送到該日期所有匹配的用戶。

  3. 腳本將繼續執行,直到該日期的最后一個用戶得到處理為止。

您可以將每封電子郵件存儲在數據庫表或臨時文件中,此時用戶操作將發送待處理的電子郵件。 例如,您可以每10秒發出一個ajax請求,該請求將發送郵件以防止頁面緩慢加載。

更好的解決方案是將cronjob用於此類工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM