如何在PHP-CLI(版本7.3)中获取切换案例变量的输入?

问题描述 投票:0回答:1

我的代码看起来像这样:

switch ($input)
{
case "hello":
    .......code1..... ;
     break;
case "bye" :
     ......code2 .....;
     break;
case "xoxo":
     .......code3.....;
     break;
default:
    .......code4.....;

}

我正在使用$input=fgets(STDIN)来获取输入,但即使大小写匹配也不会执行相应的代码。 var_dump($input);echo $input;显示正确分配的值(至少在我看来)。我需要在代码中添加(或修改)什么?

php switch-statement user-input php-7.3
1个回答
0
投票

$input=fgets(STDIN)最后包含\ n新行字符。比较此代码中的两个var转储:

$input=fgets(STDIN);
var_dump($input);
$input = rtrim($input);
var_dump($input);

并使用$ echo 'hello' | php a.php调用输出

string(6) "hello
"
string(5) "hello"

第一个是6个字符长:Hello +新行字符,第二个预计5个字符长'hello'字符串。

© www.soinside.com 2019 - 2024. All rights reserved.