我被困住了,希望有人可以帮助我。
我有一个多选列表,如下所示:
<select name='verseData[]' size=5 multiple>
<option value='pig:oink'>Pig
<option value='duck:quack'>Duck
<option value='cow:moo'>Cow
<option value='sheep:baa'>Sheep
<option value='horse:neigh'>Horse
<option value='dog:woof'>Dog
<option value='cat:meow'>Cat
<option value='rooster:cock-a-doodle-doo'>Rooster
我想分开动物和动物的噪音。我也希望能够引用它们,以便您可以使用以下变量来编写句子:
$ animal让声音变得吵闹。
狗发出声音。
提前感谢您的帮助!
答案 0 :(得分:2)
你走了:
foreach($_POST['verseData'] as $value){
list($animal, $noise) = explode(":", $value);
echo "The $animal makes the sound $noise";
}
答案 1 :(得分:-1)
这是将字符串分解为数组的方法。一旦你爆炸,他们将获得从0开始的数字索引,并为每个元素增加1。
if(isset($_REQUEST['verseData']))
{
$selected = $_REQUEST['verseData'];
$explode = explode(":", $selected);
echo "$explode[0] makes the sound $explode[1]";
}
根据您在问题中的上述评论,您需要将name="verseData[]"
更改为name="verseData"