向PHP表单添加其他功能

enf*_*eld 5 php forms

给定下面的代码,当我从下拉框[S,M,L]中选择一个值并点击提交时,我得到以下输出之一:

S is equal to
M is equal to
L is equal to
Run Code Online (Sandbox Code Playgroud)

我想输出是沿着的

S is equal to Small 
M is equal to Medium 
L is equal to Large
Run Code Online (Sandbox Code Playgroud)

是否可以在我的代码中添加一些内容来实现此目的 或者我需要采取不同的方法吗?

<form action="?" method="post">

<?php
$size = array();
$size[] = "";
$size[] = "S";
$size[] = "M";
$size[] = "L";
if(isset($_REQUEST['list'])){

    echo $size[(int)$_REQUEST['list']]." is equal to "."<br />"; 

}

echo '<select name="list">'."\n";
$count = 0;

foreach($size as $size){
    echo '<option value="'.$count.'">'.$size.'</option>'."\n";

    $count++;
}
echo '</select>';
?>

<input type="submit" value="submit" />
</form>


<form action="?" method="post">
Run Code Online (Sandbox Code Playgroud)

Lau*_*rke 1

通过此解决方案,您可以重用原始静态数组来填充后回声。还要尽量避免在 html 中使用 \n ,而是使用语义<br>.

<form action="?" method="post">

<?php
$size = array(""=>"","Small"=>"S","Medium"=>"M","Large"=>"L");

if(isset($_REQUEST['list'])){

    echo $size[$_REQUEST['list']]." is equal to ".$_REQUEST['list']."<br />"; 

}

echo "<select name='list'>";

foreach($size as $key=>$value){
    echo "<option value='$key'>$value</option>";

}
echo '</select>';
?>

<input type="submit" value="submit" />
</form>
Run Code Online (Sandbox Code Playgroud)