如何使用print_r php打印数组的值?

时间:2012-02-21 09:43:14

标签: php html

我有一个存储在变量“do”中的值数组 它是这样的,但不完全是

<html>
  <input type='text' name='do' id='do'>
  <input type='text' name='do' id='do'>
  <input type='text' name='do' id='do'>
  <input type='text' name='do' id='do'>
  <input type='text' name='do' id='do'>
</html>

然后我使用[print_r]打印它然后它给出了结果

<?php
print_r($_POST['do']);

//and i try this also
foreach($_POST as $key => $val){
  echo $key . ' : ' . htmlentities($val,ENT_QUOTES) . "<br>\n";?>   
}


[do=1&do=2&do=3]

我怎么能修改或只打印这样的值:

1
2
3

6 个答案:

答案 0 :(得分:1)

不要为多个元素分配相同的ID(这就是它的原因)但是更改名称以便将一组元素作为POST发送

<input type='text' name='do[]'>
<input type='text' name='do[]'>
<input type='text' name='do[]'>
<input type='text' name='do[]'>
<input type='text' name='do[]'>

答案 1 :(得分:0)

foreach($_POST as $key => $val)
  echo $val;

^^会这样做。但是你不能像$ val = some那样编辑。要更改值,请使用$ POST [$ key] = something;

答案 2 :(得分:0)

<input type='text' name='do[]' id='do'>
<input type='text' name='do[]' id='do'>
<input type='text' name='do[]' id='do'>
<input type='text' name='do[]' id='do'>
<input type='text' name='do[]' id='do'>

答案 3 :(得分:0)

这不会正常工作,因为你用不同的值覆盖了同一个变量,最后得到一个变量,并指定了最后一个值。

将此更改为

<input type='text' name='do[]' id='do'>
<input type='text' name='do[]' id='do'>
<input type='text' name='do[]' id='do'>
<input type='text' name='do[]' id='do'>
<input type='text' name='do[]' id='do'>

所以你可以像这样循环:

foreach($_POST['do'] as $key => $val)

答案 4 :(得分:0)

在将POST数据解析为$_POST时,PHP会使用相同的 plain 名称覆盖值。

您可以改为编写以下表单代码:

<html>
<input type='text' name='do[]' id='do'>
<input type='text' name='do[]' id='do'>
<input type='text' name='do[]' id='do'>
<input type='text' name='do[]' id='do'>
<input type='text' name='do[]' id='do'>
</html>

现在,$_POST['do']是包含五个do字符串的数组。

答案 5 :(得分:0)

我认为可以这样做:

<input type="text" name="do[]" id="do_1" />
<input type="text" name="do[]" id="do_2" />
<input type="text" name="do[]" id="do_3" />
<input type="text" name="do[]" id="do_4" />
<input type="text" name="do[]" id="do_5" />

然后在POSTing上,只需查看$ _POST ['do']以获取数组。

编辑:请注意,撇号已切换为引号,ID已设为唯一,并且每个标记都已自动关闭。一般来说,它不会以其他方式验证。