我需要在提交后显示“名称”值。我的代码不起作用。 我知道,最简单的方法就是使用“ echo $ _POST [”name“] ”,但任务是了解“heredoc”的工作原理。我刚开始学习PHP。这里有错吗?
的test.html
<!DOCTYPE html>
<html>
<body>
<form action="test.php" method="post">
Name: <input type="text" name="name">
<input type="submit">
</form>
</body>
</html>
test.php的
<!DOCTYPE html>
<html>
<body>
<?php
$y = <<<HERE
$_POST["name"]
HERE;
echo $y;
?>
</body>
</html>
答案 0 :(得分:4)
你需要使用花括号。
$y = <<<HERE
{$_POST["name"]}
HERE;
与您刚创建字符串
时的情况相同$y = "Name = {$_POST['name']}";
在此处详细了解:http://php.net/manual/en/language.types.string.php。查找名为Complex(卷曲)语法的部分。
答案 1 :(得分:3)
Yo不能直接在heredoc语句中使用对数组的引用。你必须将它括在花括号
之间$y = <<<HERE
{$_POST["name"]}
HERE;
或
$name = $_POST["name"];
$y = <<<HERE
$name
HERE;