请注意,我是编码新手。
我试图做出一个switch语句,该语句将为用户提供他们输入到其正确罗马数字中的数字(仅1-10之间的数字)。
<form action="#" method="post">
Type a number from 1-10. <input type="text" name="num"/>
<input type="submit" name="submit">
</form>
<?php
switch (isset($_POST['submit'])) {
//$num = (int)$_POST["num"];
case 1:
echo "I";
break;
case 2:
echo "II";
break;
case 3:
echo "III";
break;
case 4:
echo "IV";
break;
case 5:
echo "V";
break;
case 6:
echo "VI";
break;
case 7:
echo "VII";
break;
case 8:
echo "VIII";
break;
case 9:
echo "IX";
break;
case 10:
echo "X";
break;
}
?>
当前,这就是我所拥有的,但是我不知道一种使switch语句使用用户提供的号码的方法。有帮助吗?
谢谢。
答案 0 :(得分:0)
您可以使用以下解决方案来解决您的问题:
import Task from './Task.jsx';
答案 1 :(得分:0)
首先,请确保您有东西 通知,我正在使用$ _POST [' num ']
git symbolic-ref
现在您检查
$num = $_POST['num'] ?? 0;
我会做一些不同的事情,即使那不是最有效的转换。
switch($num){
case 1:
echo 'I';
break;
case 2:
echo 'II';
break;
...
...
答案 2 :(得分:0)
isset($_POST['submit'])
返回一个布尔值,该布尔值不是switch
语句期望的1-10范围内的整数。您可能打算使用$_POST['num']
。
数组是封装逻辑的更紧凑的方法,而不是冗长且可能容易出错的switch语句。每个数组索引映射到一个数字,如下所示:
<form action="#" method="post">
Type a number from 1-10. <input type="text" name="num">
<input type="submit" name="submit">
</form>
<?php
$numerals = ['', 'I', 'II', 'III', 'IV', 'V', 'VI', 'VII', 'VIII', 'IX', 'X'];
if (isset($_POST['num'])) {
echo isset($numerals[$_POST['num']]) ? $numerals[$_POST['num']] : "error";
}
?>
答案 3 :(得分:0)
用户将在其中输入数字的input
具有name
的{{1}}属性,因此,要获取用户输入的内容,您将使用{{1} }。
'num'