$ ext是一个数组
$noofformats = count($data['formats']);
for($x = 0; $x < $noofformats; $x++){
echo $select = "<option value=\"" . $x . "\">" . $ext[$x] . "</option>";
}
当我运行此脚本时,我得到了所需的结果。结果1:
<option value="0">webm</option><option value="1">m4a</option> and so on.....
这是有效的,因为它每次运行时都会回显结果,所以我得到了每个$ noofformat值的字符串。但我希望将$ select定义为上面显示的结果。发生的是每次函数循环定义较新的结果而不是添加到先前的值,导致只有最后一个值
<option value="33">mp4</option>
我希望
echo $select;
给出结果1
的结果答案 0 :(得分:2)
现在发生的事情是每次迭代$select
都会被覆盖。你可以先连续标记字符串,然后最后回显:
$noofformats = count($data['formats']);
for($x = 0; $x < $noofformats; $x++){
$select .= "<option value=\"" . $x . "\">" . $ext[$x] . "</option>";
// ^ continually concatenate values while the loop is running
}
echo $select;
答案 1 :(得分:1)
使用
$noofformats = count($data['formats']);
for($x = 0; $x < $noofformats; $x++){
echo $select .= "<option value=\"" . $x . "\">" . $ext[$x] . "</option>";
}