php $argv $argc
在写一些定时任务或者脚本,以后台方式运行的时候,我们需要传参给脚本,这个时候就会用到$argv 和 $argc了,为了便于记忆查了一下这变量 $avgv 为 argument vector, $avgc 为 argument count
-
$argv — 传递给脚本的参数数组,它被定义在$_SERVER全局数组中(当脚本以命令行方式运行时,argv 变量传递给程序 C 语言样式的命令行参数)。当通过 GET 方式调用时,该变量包含query string。说明
- 包含当运行于命令行(CLI)下时传递给当前脚本的参数的数组。
- Note: 第一个参数总是当前脚本的文件名,因此 $argv[0] 就是脚本文件名。
- Note: 这个变量仅在 register_argc_argv 打开时可用。
-
index.php
<?php echo $argv[0]; echo "\n"; var_dump($argv[1]); echo "\n"; var_dump(intval($argv[2])); echo "\n"; echo $argv[3]; echo "\n"; echo $argc;
执行
php index.php 1 10 100
显示:
index.php //$argv[0]显示结果 经测试此处显示的是此脚本相对于执行位置的相对路径(就是你在哪里输入的php index.php,这里显示的就是 index.php 相对于你当前目录的位置) string(1) "1" //$argv[1]显示第一个参数会转为字符串 int(10) //$argv[2]显示第二个参数 100 //$argv[3]显示第二个参数 4 //$argv参数的个数 相对路径+你传的参数