Re: [請益] 大量發信後端執行
首先感謝cleanwind大以及pobie大
再抓緊時間查完資料後,這幾天終於有空檔開始實作
幫自己自問自答一下
: 不知有沒有解答到你的問題 @@ 參考一下囉~
: ※ 引述《rock810 ()》之銘言:
: : 各位好
: : 小弟是php的新手,最近再幫某單位做大量發信的工作(EDM)
: : 目前是托別人管理MAIL SERVER的福,大量寄信都沒什麼問題
: : 只是跑上萬筆的迴圈寄信,一次一封,要等大約20分鐘網頁才會跑完
: : (也不知道這樣寫好不好)
: : 使用者就是要開著那個頁面等個20分鐘
: : 我知道有的系統是可以在使用者執行後,他可以關掉瀏覽器去做別的事情
: : 剩下的伺服器會幫忙完成
以上需求,只要一開始使用「ignore_user_abort(true);」就能解決
可以在執行發送mail迴圈後,關掉瀏覽器,伺服器那邊會接著完成
我這個案例使用ignore_user_abort(true);相當單純
但也有查到使用不慎,很容易浪費伺服器資源的相關資料
幾位前輩也有提到要配合set_time_limit,因為PHP預設只讓程式執行30秒
沒設定的話超過30秒就會中斷
: : 現在想實作這一點
: : 找了一些資料,但是很雜很亂,沒有頭緒
: : 像是EXEC、排程等等
: : 能不能請版上先進給點方向
: : 我現在亂想一個是用 PHP 產 MAIL LIST 在用 EXEC 去執行 VBS(自己寫一個VBS寄信)
: : 只是這樣亂湊感覺起來很鳥(沒試過也不知道能不能行)...
: : 我的環境是WINDOWS SERVER 2008 用PHP的 MAIL() 在寄信
再來是如果想利用排程來寄信,可以按照pobie大的建議
先單獨寫一段發送信件的php
然後再寫.bat檔的時候,直接使用「php x:\xx\cron_send.php」
.bat其實就是.txt檔改副檔名為.bat即可,通常不會有什麼問題(除非有編碼問題)
再利用win排程去執行
整體而言不難實作,也可能是因為我的需求比較單純
如果有什麼其他需求或變化,歡迎一起討論
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.124.3.166
推
01/17 02:50, , 1F
01/17 02:50, 1F
→
01/17 04:35, , 2F
01/17 04:35, 2F
→
01/17 17:38, , 3F
01/17 17:38, 3F
※ 編輯: rock810 來自: 140.124.3.166 (01/17 17:40)
推
01/17 23:54, , 4F
01/17 23:54, 4F
→
01/19 09:32, , 5F
01/19 09:32, 5F
→
01/19 09:38, , 6F
01/19 09:38, 6F
→
01/19 09:46, , 7F
01/19 09:46, 7F
→
01/22 01:02, , 8F
01/22 01:02, 8F
→
01/22 01:02, , 9F
01/22 01:02, 9F
討論串 (同標題文章)
PHP 近期熱門文章
PTT數位生活區 即時熱門文章