2

目前正在编写一个小命令行脚本,我已经让它工作得很好。

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

I 5 6

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

就目前而言,我似乎无法在数组中捕获用户的输入。我总是能得到第一个字母,但不能用fgetc.

目前捕捉是这样的:

 $input = strtolower(fgetc(STDIN)); 

有人可以帮忙吗?

4

3 回答 3

2

fgetc()只读取一个字符。

您要使用的是fgets().

在您的情况下,要将输入行(小写,您显然想要它)作为数组,请使用:

$input_line = strtolower(fgets(STDIN));
$input_array = explode(" ", $input_line);
于 2012-11-29T10:01:19.907 回答
1

使用fgets()读取整行。

于 2012-11-29T10:00:32.080 回答
1
$input = explode(" ",strtolower(fgets(STDIN))); 

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

于 2012-11-29T10:01:23.363 回答