我应该创建一个使用2个参数的函数。这两个参数都是字符串。参数之一是文本,另一个参数是字母,A
或B
。如果是A
,则需要使用文本的内置PHP函数将大小写更改为大写。如果是B
,我需要使用文本的内置PHP函数将大小写更改为小写。
我知道我必须使用elseif语句。
function paint($case, $str)
{
if $case = A echo $sentence ($str);
else echo upper($str);
}
$sentence = "Placeholder text here.";
paint("a", $sentence);
paint("b", $sentence);
答案 0 :(得分:0)
您应该使用switch..case
语句
function paint($case, $str)
{
switch (strtolower($case))
{
case 'a': $str = strtoupper($str);
break;
case 'b': $str = strtolower($str);
break;
}
echo $str;
}
$sentence = "Placeholder text here.";
paint("a", $sentence); // PLACEHOLDER TEXT HERE.
paint("b", $sentence); // placeholder text here.
paint("nonsense", $sentence); // Placeholder text here.
或者如果您想在没有给出“ a”和“ b”的情况下抛出异常,请将switch
块更改为:
switch (strtolower($case))
{
case 'a': $str = strtoupper($str);
break;
case 'b': $str = strtolower($str);
break;
default :
throw new \InvalidArgumentException('First argument of function "' . __FUNCTION__ . '" is expected to be a string either "a" or "b".');
}
switch
.. case
构造是多个if
.. elseif
.. else
语句的另一种形式,但条件是入口点。如果您不使用显式break
语句,则执行将进入下一种情况。如果没有其他匹配的情况,则default
是切入点。