php-cgi如何使用(php cli模式执行php文件)

php-cgi如何使用(php cli模式执行php文件)

需求:如果使用浏览器,发邮件100万封邮件。这个时候浏览器就不能动了要一直在发邮件这个页面打开着,因为你一切换页面发邮件这个任务就不会执行了。而且有什么异常出现任务挂了,可能会导致给某个用户发好几封。

Php的CLI模式的好处是,执行php程序,不需要浏览器,也不需要启动服务器

什么是Php的cli呢??

相信下图大家都不陌生,只是不知道如何使用而已

win需要通过cmd来执行(我的是phpstudy集成环境php.exe就在php-7.0.12-nts下面)

下图是test.php文件中的代码

使用cli执行:

进程退出之后,如何来完成队列中没有完成的任务呢??

通过exec函数来执行cli的命令,从而触发队列的执行(在php文件中触发队列)。说白了也就是给php放到win7的后台中去跑

使用浏览器执行:

浏览器访问:cli_test.php这个文件

使用phpcli模式测试发邮件

思路:

1、根据条件查需要发邮件的,收件人邮箱号

2、封装邮件类库的domo。

判断,第1步查到就发(轮询每次查n条),.

查不到就break终止 (查不到说明不需要发)

3、使用cmd的cli调用这个文件进行发送

ajax异步触发邮件队列相当于第1步和第2步同时执行;第3步:拿ajax触发;第4步的do_queue.php文件中写的就是cli_exec.php中的一样(使用cli执行quexe.php文件);

第5步的quexe.php文件中写的和cli_test.php中的一样(循环读取队列表,调类库的方法发送邮件);

看这的时候,建议先学习下http://blog.csdn.net/qq_33862644/article/details/79339532发邮件的原理,和调类库的方法(当然给这类库封装下)建议参考http://blog.csdn.net/qq_33862644/article/details/79339967

此思路的亮点是:

只要有人来注册,就可以执行第5步,会给上次执行不成功的任务,执行成功。以此类推

注意:队列表中只插入邮箱

php-cgi如何使用(php cli模式执行php文件)相关教程

php cgi远程控制,php-cgi如何使用(php cli模式执行php文件)相关推荐

  1. php cgi远程控制,php cgi远程任意代码执行漏洞

    国外又发布了一个牛逼闪闪的php cgi远程任意代码执行漏洞:http://eindbazen.net/2012/05/php-cgi-advisory-cve-2012-1823/ 粗看一下貌似没啥 ...

  2. php cgi限制,php cgi对单个流量最大执行时间和作用域

    一,总结 php.ini的max_execution_time设置的超时时间是指:cgi worker进程处理一次请求的周期中,占用cpu时间分片的最大总时间,不包括系统调用,比如本地磁盘io等待时间 ...

  3. linux下cgi环境搭建,CGI Linux下搭建环境

    CGI Linux下搭建环境 一.简述 记--在Ubuntu系统搭建CGI编程测试环境,服务器使用apache,还可以使用其它服务器如lighttpd,boa,nigx. 二.安装apache 命令: ...

  4. CGI模式,模块模式与CLI模式运行PHP的区别

    来源:http://www.blogdaren.com/post-199.html 以CGI方式运行时,web server将用户请求以消息的方式转交给PHP独立进程,PHP与web服务之间无从属关系 ...

  5. cgi python windows_python cgi windows怎么办

    如果是python2.X的话,可以使用modpython进行python的web编程.如果升级到python3.X的话,则可以使用wsgi.因为modpython不支持python3 在这里介绍使用c ...

  6. boa + ajax + cgi ajax请求cgi

    最近公司要做一个通讯管理机,然后需要和另外一个同事一起做,我们需要用到boa+Ajax+CGI,以前没试过与CGI交互,一开始发现问题挺大的,用ajax请求cgi,总是不返回数据,又或者请求回来的是c ...

  7. html网页和cgi程序编程,CGI 编程方式学习

    1.大家都知道CGI是通用网关接口,可以用来编写动态网页.而且CGI可以用很多种语言来写,用perl来编写最常见, 我这里就是用perl来编写做例子.讲到编写CGI编程方式,编写CGI有两程编程风格. ...

  8. sapi/cgi/php-cgi,sapi/cgi/php-cgi

    PHP不一定要以http方式调用.PHP与其它应用的接口叫做SAPI,选用不同的SAPI决定了调用PHP的方式.例如Apache的mod_php就是一个SAPI的实现,用于Apache与PHP交互,同 ...

  9. php cli模式的一些坑

    看下cli模式好使不 命令行下运行 php -r "echo php_sapi_name();" 这条命令就是在cli模式运行php语句,php -r就是run一条php命令的意思 ...

最新文章

  1. 细粒度图像分割 (FGIS)
  2. 在Linux上限制远程登陆的IP
  3. 阿里云查看mysql版本_查看mysql版本的四种方法及常用命令
  4. CentOS下Clonezilla通过网络自动备份还原系统
  5. java geom_java.awt.geom 类 Area - Java 中文参考手册
  6. 模块-基本概念和import导入复习
  7. Linux命令之hexdump
  8. 计算机在轻化工程中的应用,计算机在轻化工程专业中的应用-中国大学mooc-题库零氪...
  9. java date传输类型错误_转换日期格式:Java中的转换错误?
  10. 前端学习(3345):设计模式之工厂模式2
  11. python table_python学习之HTML-table标签
  12. 视频教程-PHP之socket入门实战websocket聊天室-PHP
  13. 我的大数据之路(一)-数据仓库也需要大数据
  14. rgb灯板Android程序,【图片】RGBW智能小夜灯程序则最近搞这玩意硬件真难搞【技术宅吧】_百度贴吧...
  15. 30天扣篮训练计划_高强度减脂训练计划,每天练30分钟,坚持一个月,减掉多余的脂肪...
  16. lcx端口转发linux_LCX端口转发及NC反弹
  17. SOLO代码踩过的各种坑
  18. python 百度脑图json数据转Excel
  19. Spark SQL 快速入门系列(六)Spark SQL 访问 JDBC
  20. android 滤镜 原理,android openglse实现滤镜九宫格

热门文章

  1. 源码网站都有哪些_一个网站都包括哪些费用?
  2. ESP32彩屏开发板(WT32-SC01),除了买买买,你还可以参与一起设计了
  3. oracle一个表更新另一个表多列,oracle sql更新表中多列值,值是从其它表中查询(select)得出...
  4. python 节点_python在以太坊开发中节点和网络如何选择?
  5. 普华基础软件笔试_普华“2018上海市软件和集成电路产业发展专项资金项目”成功验收...
  6. 华硕笔记本节能证书_新标准兼顾性能与续航 笔记本换代哪些型号值得买?
  7. java计算二叉树的节点最小值_java计算二叉树的高度以及叶节点个数
  8. server2016安装mysql_windows server2016安装MySQL5.7.19解压缩版教程详解
  9. top20万_主播收入榜(12.10)| 快手小伊伊收入150万;薇娅抖音快手开账号
  10. 构成子网与构成超网的分析