美文网首页
$argc/$argl

$argc/$argl

作者: 啦啦一路高歌 | 来源:发表于2025-08-26 11:09 被阅读0次

$argc 是一个预定义的全局变量,它的名字是 "argument count" 的缩写,意思是参数个数

它专门用于 PHP 命令行脚本(CLI - Command Line Interface),而不是通过浏览器访问的网页。

具体含义

$argc 是一个整数,它表示运行当前 PHP 脚本时,在命令行中传递的参数的总数量

这里的关键是:脚本文件名本身被认为是第一个参数

如何理解?

假设你有一个名为 script.php 的脚本,你这样运行它:

php script.php arg1 arg2 arg3

我们来分解这个命令:

  • php : PHP 解释器
  • script.php : 第 0 个参数(argv[0])
  • arg1 : 第一个传递的参数
  • arg2 : 第二个传递的参数
  • arg3 : 第三个传递的参数

对于这个命令,$argc 的值将是 4script.php + arg1 + arg2 + arg3)。

与之配套的变量:$argv

$argc 几乎总是和另一个预定义变量 $argvargument values)一起使用。

  • $argv 是一个数组,包含了所有传递进来的参数。
  • $argv[0] 永远是脚本的文件名。
  • $argv[1] 是第一个真正的参数,$argv[2] 是第二个,以此类推。

举例说明

创建一个文件 test.php,内容如下:

<?php
echo "参数总数 (argc): " . $argc . "\n";
echo "参数列表 (argv):\n";
print_r($argv);
?>

在命令行中执行:

php test.php hello world 123

输出结果将会是:

参数总数 (argc): 4
参数列表 (argv):
Array
(
    [0] => test.php
    [1] => hello
    [2] => world
    [3] => 123
)

回到你之前的进程信息

总结

变量 全称 类型 含义
$argc Argument Count 整数 命令行参数的总个数(包含脚本名本身)
$argv Argument Values 数组 包含所有命令行参数的数组,$argv[0] 是脚本名

记住:这两个变量只在命令行模式(CLI)下有效,如果你在浏览器中通过 Web 服务器访问一个使用了 $argc$argv 的脚本,它们将是空值或未定义的。

相关文章

网友评论

      本文标题:$argc/$argl

      本文链接:https://www.haomeiwen.com/subject/vkcrajtx.html