这是代码。
<?php
$dirname = 'music';
$dir = new DirectoryIterator($dirname);
foreach ($dir as $path => $splFileInfo)
{
if ($splFileInfo->isDir())
continue;
$output = explode(' ', $splFileInfo, 5);
echo "<form>";
?><input type="checkbox" name="<?php echo $output[0] ?>" /><?php echo "$output[0]"; ?>
<input type="checkbox" name="<?php echo $output[1] ?>" /><?php echo "$output[1]"; ?>
<input type="checkbox" name="<?php echo $output[2] ?>" /><?php echo "$output[2]"; ?>
<?php echo "</form>";
}
?>
这导致在编码的复选框之后有两个额外的复选框。示例:image since it won't let me post images yet.
答案 0 :(得分:0)
我认为你试图在循环中做一些应该在它之外完成的事情。我期望基于代码的确切输出,所以让我在这里尝试修复:
<form action="" method="post">
<?php
$dirname = 'music';
$dir = new DirectoryIterator($dirname);
foreach ($dir as $path => $splFileInfo)
{
if ($splFileInfo->isFile())
{
$filename = $splFileInfo->getFilename();
?>
<input type="checkbox" name="<?= $filename; ?>" /><label><?= $filename; ?></label><br />
<?php
}
}
?>
</form>