<?php
$var = "arbitrary";
echo <<<_END
<form method = "post" action = "feed.php">
<input type = "text" name = "$var" />
<input type = "submit" />
</form>
_END;
if (isset($_POST['$var']))
{
echo $_POST['$var'];
}
?>
当我尝试从变量$ var中检索它时,我似乎无法得到这个$ _POST数据。这可能吗? (从一个字符串以外的东西获取$ _POST)
答案 0 :(得分:6)
$_POST['$var']
应为$_POST[$var]
,而不是将您的变量包装在单引号中
答案 1 :(得分:2)
试试这个:
<?php
$var = "arbitrary";
?>
<form method = "post" action = "feed.php">
<input type = "text" name = "<?php echo $var ?>" />
<input type = "submit" />
</form>
<?php
if (isset($_POST[$var]))
{
echo $_POST[$var];
}
?>
问题只是在您的数组语法中引用$var
$_POST['$var']
,正如其他人所提到的那样。你的heredoc语法没有任何问题,所以如果你对HERDOC语法感觉更舒服,你应该继续使用它。