PHP爆炸和Foreach $ _POST

时间:2015-09-11 23:02:37

标签: php foreach explode

我需要回复尽可能多的行,如下面的输出示例,具体取决于来自我的html $ _POST的电话号码的数量:

指定的电话号码是555-879-009

这是另一个重复相同的数字555-879-009

这第三行又是,重复数字555-879-009

这是我原来的php:

<htnl>
<body>
<h6>
<br><br>
;*****************************************<br>
;  <?php echo $_POST["name"]; ?><br>
;*****************************************<br>
<br>

The Phone Number(s) assigned is <?php echo $_POST["number"]; ?> <br>
Here is another repeating the same number <?php echo $_POST["number"]; ?> <br>
And this third line is again, repeating the number <?php echo $_POST["number"]; ?> <br>

</h6>
</body>
</html>

现在我尝试使用explode和foreach但是我得到了以下结果:

指定的电话号码是555-879-009 555-676-999 555-874-333 555-344-775

这是另一个重复相同的数字555-879-009 555-676-999 555-874-333 555-344-775

第三行再次,重复数字555-879-009 555-676-999 555-874-333 555-344-775

我需要的是:

指定的电话号码是555-879-009

这是另一个重复相同的数字555-879-009

这第三行又是,重复数字555-879-009

指定的电话号码是555-676-999

这是另一个重复相同的数字555-676-999

第三行再次,重复数字555-676-999

指定的电话号码是555-874-333

这是另一个重复相同的数字555-874-333

第三行再次,重复数字555-874-333

指定的电话号码是555-344-775

这是另一个重复相同的数字555-344-775

这第三行又是,重复数字555-344-775

我需要打印尽可能多的数字,具体取决于从我的html表单传入的内容 这是我的php尝试:

<htnl>
<body>
<h6>
<br><br>
;*****************************************<br>
;  <?php echo $_POST["name"]; ?><br>
;*****************************************<br>
<br>

 The Phone Number(s) assigned is <?php $number = explode(' ', $_POST['number']);foreach ($number as $varnumber){ echo $varnumber;}?> <br>
Here is another repeating the same number <?php $number = explode(' ', $_POST['number']);foreach ($number as $varnumber){ echo $varnumber;}?> <br>
And this third line is again, repeating the number <?php $number = explode(' ', $_POST['number']);foreach ($number as $varnumber){ echo $varnumber;}?> <br>



</h6>
</body>
</html>

2 个答案:

答案 0 :(得分:1)

您需要将foreach循环放在整个HTML块上。

<?php
$numbers = explode(' ', $_POST['number']);
foreach ($numbers as $n) { ?>
    The Phone Number(s) assigned is <?php echo $n; ?> <br>
    Here is another repeating the same number <?php echo $n; ?> <br>
    And this third line is again, repeating the number <?php echo $n; ?> <br>
    ?>
}

答案 1 :(得分:0)

根据您的解释,您需要使用foreach语句围绕每组电话号码打印输出。 http://php.net/manual/en/control-structures.foreach.php

使用备用PHP语法的示例。 http://php.net/manual/en/control-structures.alternative-syntax.php

<?php
$phones = explode(' ', $_POST["number"]);

foreach($phones as $phone):?>
The Phone Number(s) assigned is <?php echo $phone ?><br />
Here is another repeating the same number <?php echo $phone ?><br />
And this third line is again, repeating the number <?php echo $phone ?><br />
<?php endforeach; ?>