如果在 PHP 运行时 $entree_id 中已经有一个值,那么这两个都应该工作。如果你做你所说的第一个......
<form action='/' method='post'><input type='hidden' name='entree_id' value='" . $entree_id . "'><input type='submit' class='button'></form><p>
...那么您将需要它成为 echo 语句的一部分(听起来您可能已经在做):
<?php
$entree_id = 5;
echo "<form action='/' method='post'><input type='hidden' name='entree_id' value='" . $entree_id . "'><input type='submit' class='button'></form><p>";
?>
(不要忘记最后的分号!)这为我产生了这样的输出:
<form action='/' method='post'><input type='hidden' name='entree_id' value='5'><input type='submit' class='button'></form><p>
但是您也可以按照您所说的第二种方式来做,我认为这可能更具可读性。您不必对整个事物使用 echo 语句,只需对变量使用:
<?php
$entree_id = 5;
?>
<form action='/' method='post'><input type='hidden' name='entree_id' value='<?php echo $entree_id; ?>'><input type='submit' class='button'></form><p>
请注意,我将您的“打印”更改为“回声”,并且还在回声的末尾添加了一个分号。
这对我也有用,产生了这个输出:
<form action='/' method='post'><input type='hidden' name='entree_id' value='5'><input type='submit' class='button'></form><p>
希望这可以帮助!如果您还有其他问题,请告诉我。