我希望能够存储以下选择元素,并在一个变量内完成构造它的 php foreach 循环,然后可以将其包含在动态创建的表单中。(前两行仅显示 $statement 和$lengths 是。)我尝试的解决方案在下面,但它不会让我在变量中放置一个 foreach 循环。
//$statement = 'in %s days %s will have the most followers'
//$lengths = array([0]=>'3 days',[1]=>'4 days',[2]=>'6 days')
<select name="timeframe">
<?php foreach($lengths as $length)
{
echo "<option value = " . $length . "/>" . $length . "</option>";
}?>
</select>
这是我的第一个尝试解决方案(失败):
<?php
$select_a = '<select name="timeframe">' .
foreach($lengths as $length)
{
echo "<option value = " . $length . "/>" . $length . "</option>";
} . '</select>';
$select_b = '<select name="celebrity">' .
foreach($names as $name)
{
echo "<option value = " . $name . "/>" . $name . "</option>";
} . '</select>';?>
我这样做的原因是因为数组($lengths 和 $names)都将以序列化的形式存储在数据库中(然后反序列化以便能够在此处循环),并且在第三个字段中将是一个语句%s 占位符。最终结果是我可以在 html 表单元素中回显以下内容。