PHP 将值传递给包含文件中的变量


PHP passing values to variables in included files

我有一个php文件(article.php),其中包含包含内容的变量和对包含包含html结构(template.php)的模板的引用。

<?php
$headline = 'Headline';
$author = 'Author';
$paragraph = 'Text';
include 'template.php';
?>

这是模板.php上面提到的。它包括块模板.php。(更多内容见下文)。

<html>
   <body>
      <?php include 'blockTemplate.php'; ?>
   </body>
</html>

这是块模板.php。它有变量,我想在 article1.php(顶级文件)中提供的值:

<h1>Title: <?php $headline ?></h1>
<h2>Author: <?php $author ?></h2>
<p>Text: <?php $paragraph ?></p>

这是我应该从文章 1.php 中获得的输出:

标题

:标题

作者: 作者

文本

:文本

这是我得到的输出。请注意,变量未包含在内:

标题:

作者

发短信:

问题:如何将 article1.php 中的值传递给包含的 blockTemplate.php 中的变量? 是否发生了什么,包含的文件在包含之前正在处理,以便在包含时不包含任何变量?

你试过吗:

<h1>Title: <?php echo $headline ?></h1>
<h2>Author: <?php echo $author ?></h2>
<p>Text: <?php echo $paragraph ?></p>

这对我有用

我遇到了类似的问题。在我的包含中.php我有一句话是这样的,

echo '<form id="frm"><input type="hidden" id="Variable" valve=$>Variable</form>'

哪个 PHP 应该评估但没有。所以在阅读了上面的Xare帖子后,我尝试了,

echo '<form id="frm"><input type="hidden" id="Variable" valve=$Variable></form>';

从单引号中删除我的$Variable修复了它。