Php - 如何返回foreach输入的结果?

时间:2016-12-06 22:44:03

标签: php forms input foreach isset

我有一个用于多个输入条目的表单。

我想循环使用foreach函数来获取数据并返回结果。

但不知怎的,它因为$ _POST

而一直失败
<?php
$age = array(
    "Peter"=> '35f',
    "Ben"=> '37f', 
    "Joe"=> '43f'
);

foreach( $age as $x => $x_value ) {
    (isset($_POST['$x_value'])) ? $y = $_POST['$x_value'] : '';

    echo "Key=" . $x . ", Value=" . $x_value . ", Input=" . $y;
    echo "\r\n";
}
?>

表格

<form action="" method="post">
    <input name="35f" value="6d583"/>
    <input name="37f" value="2ds43"/>
    <input name="43f" value="5533d"/>
    <input name="submit" value="submit"/>
</form>

预期结果:

Key=Peter, Value=35f, Input=6d583
Key=Ben, Value=37f, Input=2ds43
Key=Joe, Value=43f, Input=5533d

2 个答案:

答案 0 :(得分:1)

你不需要单引号:

$y = isset($_POST[$x_value]) ? $_POST[$x_value] : '';

答案 1 :(得分:0)

您必须在括号内使用$_value,而不必使用&#39;&#39;因为它是一个变量而不是一个字符串

<?php (isset($_POST[$x_value])) ? $y = $_POST[$x_value] : '';