解析argc argv在php中的应用

yipeiwu_com6年前PHP代码库

argc,argv 用命令行编译程序时有用
我们会在定时任务脚本中发现这样的参数,$obj->run($argv[1]);
*/30 * * * * /usr/local/bin/php /htdocs/test.com/uaqm/commands/test.php 1 >/dev/null 2>&1
就像上面那个定时任务,如果我们调用他的时候加上了参数$argv[1],那就代表了,在脚本中在DOS命令行中执行程序名后的第一个字符串
即上面脚本中对应的红色的那个1,如果我们部署了下面所列的定时任务
*/30 * * * * /usr/local/bin/php /htdocs/test.com/uaqm/commands/test.php 1 >/dev/null 2>&1
*/30 * * * * /usr/local/bin/php /htdocs/test.com/uaqm/commands/test.php 2 >/dev/null 2>&1
*/30 * * * * /usr/local/bin/php /htdocs/test.com/uaqm/commands/test.php 3 >/dev/null 2>&1
那么我们认为这个任务分了三个进程在运行,也就是说压力变为原始的三分之一,这样就很容易理解了

下面放出这两个关键字的官方解释。
  argc: 整数,用来统计你运行程序时送给main函数的命令行参数的个数
* argv: 字符串数组,用来存放指向你的字符串参数的指针数组,每一个元素指向一个参数
argv[0] 指向程序运行的全路径名
argv[1] 指向在DOS命令行中执行程序名后的第一个字符串
argv[2] 指向执行程序名后的第二个字符串
        argv[argc]为NULL

相关文章

php daddslashes()和 saddslashes()有哪些区别分析

//GPC过滤,自动转义$_GET,$_POST,$_COOKIE中的特殊字符,防止SQL注入攻击 $_GET = saddslashes($_GET); $_POST = saddsl...

Zend Guard使用指南及问题处理

Zend Guard是目前市面上最成熟的PHP源码加密产品了。 刚好需要对自己的产品进行加密,折腾了一晚上,终于搞定,将碰到的问题及解决方法记录下来,方便日后需要,也可以帮助其他人。 我...

PHP源代码数组统计count分析

zend给php的所有变量都用结构的方式去保存,而字符串的保存和数组的保存也是不同的,数组采用的是hash表的方式去保存(大家知道hash保存的地址有效的减少冲突-hash散列表的概念你...

浅谈PHP封装CURL

浅谈PHP封装CURL

CURL是一个非常强大的开源库,支持很多协议,包括HTTP、FTP、TELNET等,我们使用它来发送HTTP请求。它给我 们带来的好处是可以通过灵活的选项设置不同的HTTP协议参数,并且...

PHP页面跳转操作实例分析(header方法)

本文实例分析了PHP页面跳转操作。分享给大家供大家参考,具体如下: 跳转 header()为php函数,向浏览器发送指定命令 html: <meta http-equiv="...