您好,我正在使用POST方法提交表单,我希望其内容与上一个表单一一对应。到目前为止,我正在使用
<?php foreach($_POST as $data){
echo $data;
}
?>
显示$ _POST的整个数组,如何使用通用的“ for”循环使其不回显数组的最后一项?它似乎不起作用
<?php
$length=count($_POST)-1;
for($i=0; $i<$length; $i++) {
echo $_POST[$i];
?>
<br>
<?php } ?>
我遇到5个错误,存在回声线的位置从0到4的未定义偏移
答案 0 :(得分:1)
执行以下操作:
<?php
$counter = 0;
$lastItemOrder = count($_POST);
foreach($_POST as $value) {
$counter++;
if( $counter !== $lastItemOrder) {
echo $value;
}?>
<br><?php
} ?>
您的循环仅获得数字索引,例如$ _POSR [0],$ _ POST [1] ...如果在HTML中输入元素的属性名称也为数字,例如name =“ 0”,则这将起作用等等。
foreach独立于索引,数字或字符串在数组上执行循环。
尝试一下:
<?php
$counter = 0;
$lastItemOrder = count($_POST);
foreach($_POST as $index => $value) {
$counter++;
if( $counter !== $lastItemOrder) {
echo $index . ": " . $value;
}?>
<br><?php
} ?>
答案 1 :(得分:0)
好吧,现在我明白了,我不知道关联数组和数字数组之间的区别。我用if语句解决了