在php输入类型中使用php函数隐藏

时间:2015-05-17 11:24:06

标签: php

echo "<input type='hidden' name='pb1' value='$_POST[pb1]'>";
echo "<input type='hidden' name='pb2' value='$_POST[pb2]'>";

echo "<input type='hidden' name='pc1' value='$_POST[pc1]'>";
echo "<input type='hidden' name='pc2' value='$_POST[pc2]'>";

我想通过下面的函数调用执行上述任务。

function fun1($rm)
{
    for ($i=1;$i<=2;$i++)
    {
        echo "<input type='hidden' name='p.$rm.$i' value='$_POST[p.$rm.$i]'>";
    }
}

fun1('b');
fun1('c');

请建议如何编辑函数内部的代码以实现目标。

1 个答案:

答案 0 :(得分:0)

你在这里混合了两种技巧。在PHP中,您可以直接在双引号字符串中使用variabled。在单引号字符串中,您必须终止并连接。但是,您还试图在双引号字符串中动态访问数组索引,但遗憾的是它不会工作。以下是您尝试做以下事情的两种方式:     

echo "<input type='hidden' name='p$rm$i' value='".$_POST['p'.$rm.$i]."'>";

echo '<input type="hidden" name="p$rm$i" value="'.$_POST['p'.$rm.$i].'">';

// If you weren't accessing the array index dynamically (with a variable) this would work:
echo "<input type='hidden' name='p$rm$i' value='$_POST[pb1]'>";
// note no quotes for the index when inside a string   ^^^

在功能上它们完全相同。使用哪一个确实是一个偏好的情况。我说要选择你觉得更具可读性的那个。