3 回答
TA贡献1891条经验 获得超3个赞
你做对了。您只需要在 foreach 循环之外打印项目值。在循环内它总是打印最后一个值
<?php
if (isset($_POST['sub'])) {
$no= $_POST['no'];
// $ex = explode(",", $no);
$items = array ();
foreach ($no as $item) {
echo $item; // Do something with item
$items[] = $item;
}
print_r($items);
}
?>
TA贡献1786条经验 获得超11个赞
当您使用此模式no[]时,您将发送一个数组,因此无需使用爆炸。
该行也不$item = array ();执行任何操作,因为您正在填写 $itemforeach。
因此,更改您的代码如下:
<body>
<form action="array_check.php" method="post">
<input type="number" name="no[]">
<input type="number" name="no[]">
<input type="number" name="no[]">
<input type="submit" name="sub">
</form>
</body>
</html>
<?php
if (isset($_POST['sub'])) {
$no = $_POST['no'];
foreach ($no as $item) {
echo $item ; // Do something with item
print_r($item);
}
}
TA贡献1995条经验 获得超2个赞
这应该可以做到:
<?php
if (isset($_POST['sub'])) {
$no= $_POST['no'];
$nos = explode(",", $no);
$items = array (); // careful here you are using $item twice !
foreach ($nos as $no) {
$items[] = $no;
}
var_dump($items);
}
?>
- 3 回答
- 0 关注
- 186 浏览
添加回答
举报