将cmd行参数作为数组接收

时间:2012-11-29 09:55:46

标签: php

此刻编写一个小命令行脚本,我已经很好地工作了。

脚本循环直到用户发出退出命令,在此期间用户可以输入如下命令:

I 5 6

表示图像创建; 5和6是要创建的宽度和高度。

目前我似乎无法捕获用户在数组中的输入。我总是能得到第一个字母,但永远不会得到fgetc的其他两个字母。

目前正在捕捉:

 $input = strtolower(fgetc(STDIN)); 

有人可以帮忙吗?

3 个答案:

答案 0 :(得分:2)

fgetc()只读取一个字符。

您要使用的是fgets()

在你的情况下,要获得一个输入行(小写,你显然想要它)作为数组,使用:

$input_line = strtolower(fgets(STDIN));
$input_array = explode(" ", $input_line);

答案 1 :(得分:1)

使用fgets()阅读整行。

答案 2 :(得分:1)

$input = explode(" ",strtolower(fgets(STDIN))); 

fgets()只读取一个字符,fgets()读取字符串