我想使用 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() 或者,更好的方法是使用 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>';
}
?>
关于php - 使用简单的 php 'crashes' 服务器的动态 html 选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47941401/