[请益] 背景执行相关问题

楼主: b90022790 (柚子拉拉)   2020-02-04 23:13:14
各位php板上的各位前辈好!
目前在架设一个简单的订单系统,有个功能无法顺利完成,希望前辈们能给些意见,谢谢
环境:php7.4.1、 MySQL、CentOS 6.8
功能:当商家按钮确认订单后,除了修改MySQL内容外,希望能够寄mail通知客户
问题:使用PHPMailer接gmail SMTP,然而速率过慢,商家的client端需要等待执行完毕
才能看到确认后的结果,希望能先让商家看到结果,寄信的功能在服务器背景执行。
试过的解决方式:先写一个send.php专门处理寄信的功能,在商家client的页面直接显示
确认订单后的结果画面,并在商家该php页面使用system()执行send.php,程式码如下:
system("php send.php user"); //user为收信者参数
然而这仍然会等待执行完才会回responce。
使用“php 背景执行 超时”当关键字,采用将结果输出到.out,改system()程式码如下:
system("php send.php user > MAIL.out");
然而这样却变成连寄信都没有执行就结束了。
希望前辈们能给一些如何处理该功能的意见,以及为何该system()无法正常执行
谢谢各位前辈!还请各位指点!!
作者: ddoll288 (风儿卿卿)   2020-02-05 10:42:00
system("php send.php user &"); 试试看?
作者: crossdunk (推嘘自如)   2020-03-13 18:57:00
通常这个用queue处理比较好

Links booklink

Contact Us: admin [ a t ] ucptt.com