命令行执行php脚本 中$argv和$argc

时间:2023-03-09 01:12:28
命令行执行php脚本 中$argv和$argc

在实际工作中有可能会碰到需要在nginx命令行执行php脚本的时候,当然你可以去配置一个conf用外网访问。

在nginx命令行中 使用

php index.php

就可以执行这个index.php脚本了,但是怎么传递参数呢?那就要用到$argv和$aegc了。不用开启什么设置 直接在脚本中使用,类似于http传值中的$_POST和$_GET.。
在index.php插入以下菜吗

<?php
echo $argv[]; echo "\n";
var_dump($argv[]); echo "\n";
var_dump(intval($argv[])); echo "\n";
echo $argv[]; echo "\n"; echo $argc;

然后 在nginx命令行中 使用

php index.php 1 10 100

显示

index.php      //$argv[0]显示结果 经测试此处显示的是此脚本相对于执行位置的相对路径(就是你在哪里输入的php index.php,这里显示的就是 index.php 相对于你当前目录的位置)
string() ""     //$argv[1]显示第一个参数会转为字符串
int()        //$argv[2]显示第二个参数
100           //$argv[3]显示第二个参数
4           //$argv参数的个数 相对路径+你传的参数

为了便于记忆查了一下这变量 $avgv 为 argument vector, $avgc 为 argument count

详细资料:
http://php.net/manual/zh/reserved.variables.argv.php#93532