基于命令行执行带参数的php脚本并取得参数的方法


Posted in PHP onJanuary 25, 2016

本文分析了基于命令行执行带参数的php脚本并取得参数的方法。分享给大家供大家参考,具体如下:

一、为什么我们要在命令行下运行php脚本呢?

个人理解,主要有二个原因:

1. 利用crontab去跑php,可以给服务器减压,当然在这里有一个条件,就是实时性要求不高。比如:sns中的好友动态,这个实时要求不高,但是数据量比较大,这个时候定时跑的话,会给web服务器,数据库服务器分担不小的压力。

2. 就是我们要定时去完成某一事情,比如:我要删除一个月前,用户留言,这个时候,写的php脚本在crontab去执行,一天跑一次就行了。而不是手动去执行php程序。

二、命令行下执行带参数php,并取得参数

有一点很重要,就是命令行下执行php,是不走apache等这类东西的,没有什么http协议,所有get,post传参数根本不起作用,并且还会报错,如下:

zhangying@ubuntu:~$ php test.php?aaa=bbb
Could not open input file: test.php?aaa=bbb

一般情况下,不需要向定时跑的php脚本传参数,但有的时候,是要的

1. test.php测试文件,很简单吧

<?php
print_r($argv);
echo "\n";
echo $argc;
echo "\n";
?>

2. 命令行下调用

zhangying@ubuntu:~$ php test.php aaa ccc bbbb
Array
(
 [0] => test.php  //参数0,文件本身
 [1] => aaa     //参数1
 [2] => ccc     //参数2
 [3] => bbbb    //参数3
)
4 //$argc的值,参数的总数

这种传参的方式,根shell脚本真的很像

zhangying@ubuntu:~$ sh c1.sh aaa bbb

我向c1.sh传了二个参数aaa bbb,shell会得到三个参数,$0为文件本身,$1为参数1,$2为参数2。不同的是,php得到的是以数组的形势,而shell不是。

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php4的session功能评述(一)
Oct 09 PHP
php 深入理解strtotime函数的使用详解
May 23 PHP
PHP垃圾回收机制引用计数器概念分析
Jun 24 PHP
php配置php-fpm启动参数及配置详解
Nov 04 PHP
分享一个php 的异常处理程序
Jun 22 PHP
PHP生成数组再传给js的方法
Aug 07 PHP
php中常见的sql攻击正则表达式汇总
Nov 06 PHP
Yii2超好用的日期和时间组件(值得收藏)
May 05 PHP
PHP使用数组实现矩阵数学运算的方法示例
May 29 PHP
使用XHProf查找PHP性能瓶颈的实例
Dec 13 PHP
Linux基于php-fpm模式的lamp搭建phpmyadmin的方法
Oct 25 PHP
PHP常用函数之获取汉字首字母功能示例
Oct 21 PHP
crontab无法执行php的解决方法
Jan 25 #PHP
win7安装php框架Yii的方法
Jan 25 #PHP
php结合md5实现的加密解密方法
Jan 25 #PHP
PHP几个实用自定义函数小结
Jan 25 #PHP
php代码架构的八点注意事项
Jan 25 #PHP
详解js异步文件加载器
Jan 24 #PHP
PHP导出Excel实例讲解
Jan 24 #PHP
You might like
笑谈配置,使用Smarty技术
2007/01/04 PHP
解析smarty 截取字符串函数 truncate的用法介绍
2013/06/20 PHP
php微信支付接口开发程序
2016/08/02 PHP
PHP实现递归目录的5种方法
2016/10/27 PHP
PHP读取word文档的方法分析【基于COM组件】
2017/08/01 PHP
JavaScript在IE和Firefox浏览器下的7个差异兼容写法小结
2010/06/18 Javascript
JS对文本框值的判断示例
2014/03/10 Javascript
JavaScript知识点整理
2015/12/09 Javascript
jqPlot jQuery绘图插件的使用
2016/06/18 Javascript
深入了解JavaScript的逻辑运算符(与、或)
2016/12/20 Javascript
JS正则截取两个字符串之间及字符串前后内容的方法
2017/01/06 Javascript
用jquery的attr方法实现图片切换效果
2017/02/05 Javascript
JS排序之选择排序详解
2017/04/08 Javascript
详解基于Koa2开发微信二维码扫码支付相关流程
2018/05/16 Javascript
JavaScript事件委托原理与用法实例分析
2018/06/07 Javascript
vue 自定义提示框(Toast)组件的实现代码
2018/08/17 Javascript
小程序最新获取用户昵称和头像的方法总结
2019/09/23 Javascript
JavaScript RegExp 对象用法详解
2019/09/24 Javascript
在vue中利用全局路由钩子给url统一添加公共参数的例子
2019/11/01 Javascript
python if not in 多条件判断代码
2016/09/21 Python
Python图片转换成矩阵,矩阵数据转换成图片的实例
2018/07/02 Python
对Python中plt的画图函数详解
2018/11/07 Python
Python实现的爬取百度文库功能示例
2019/02/16 Python
Python实现自动签到脚本功能
2020/08/20 Python
Django框架请求生命周期实现原理
2020/11/13 Python
IE下实现类似CSS3 text-shadow文字阴影的几种方法
2011/05/11 HTML / CSS
Kenneth Cole官网:纽约时尚优雅品牌
2016/11/14 全球购物
.NET面试问题集
2015/12/08 面试题
介绍一下Make? 为什么使用make
2013/12/08 面试题
医学生求职自荐信
2013/10/25 职场文书
新闻编辑自荐信
2013/11/03 职场文书
写好自荐信的技巧
2013/11/08 职场文书
幼儿发展评估方案
2014/06/11 职场文书
预备党员期盼十八届四中全会召开思想汇报
2014/10/17 职场文书
2014年小学教学工作总结
2014/11/13 职场文书
给numpy.array增加维度的超简单方法
2021/06/02 Python