我想使用PHP数组中填充的数据创建动态HTML选项字段。但是我的问题是服务器打开包含代码的页面时"崩溃",这意味着它加载非常慢,并且没有显示整个页面冻结。我想知道为什么这么简单的代码会发生这种情况。
<?php
if(isset($variants)){
echo '<label for="exampleRecipientInput">Size</label>';
echo '<select id="exampleRecipientInput">';
for ($i = 0; $i < $variants; $i++) {
echo '<option value="Option ',$i, ' ">',$variants[$i],'</option>';
}
echo '</select>';
}
?>
包含数组的数据以以下方式创建
if (array_key_exists('Variants', $array[$productNumber])) {
$variants = explode(",",$array[$productNumber]['Variants']);
}
,因为$ variants是一个数组,您必须使用count()或更好的方法,请使用for foreach。
在您当前的情况下,循环永远不会停止,这就是您的服务器崩溃的原因。
<?php
if(isset($variants)){
echo '<label for="exampleRecipientInput">Size</label>';
echo '<select id="exampleRecipientInput">';
foreach ($variants as $key => $val) {
echo '<option value="Option ',$key, ' ">',$val,'</option>';
}
echo '</select>';
}
?>