0

我是 PHP 新手,但我认为这是可能的,但我不确定如何实现这一目标。

我在一个名为 button.php 的 PHP 文件中有一个基本的 HTML 标记,我使用 PHP 包含将其注入到网页中。

这是 button.php 文件的内容:

<div class="btn">
<div class="highlightBtn">
    <div class="btnTag">
        Submit
    </div>
</div>
</div>

问题是 - 在我包含它之后,我如何在 class="btnTag" 标签中获取值?(即,在我将此文件包含到主页后,我希望能够根据包含的位置对其进行更改,因此不必总是说“提交”)。

所以我想它可能是这样的

<? php include("button.php"); 
   //some code follows to change value inside the btnTag class  
?>

谢谢你的帮助!

4

2 回答 2

1

它确实应该事先完成,如

// button.php
<div class="btn">
<div class="highlightBtn">
    <div class="btnTag">
        <?php echo isset($caption) ? $caption : 'Submit' ; ?>
    </div>
</div>
</div>

进而

<?php
    $caption = 'Click me'; // or comment out to get the default
    include('button.php');
?>

但是,上面并不是一个真正的好方法

让文件在包含时只定义一个函数会更好,然后您可以在需要按钮时调用该函数。例如:

// button.php
<?php
    function button($caption = 'Submit') {
        echo <<<END_HTML;
<div class="btn">
  <div class="highlightBtn">
    <div class="btnTag">$caption</div>
  </div>
</div>
END_HTML;
    }

然后,您可以在button.php没有任何直接影响的情况下包含,并且只要您需要一个按钮,您就可以调用button('Click me')或只是button().

于 2013-01-27T02:58:30.667 回答
0

您应该在包含它之前执行此操作:

$string = 'Submit';
include 'button.php';

在button.php里面:

<div class="btn">
<div class="highlightBtn">
    <div class="btnTag">
        <?php echo $string; ?>
    </div>
</div>
</div>

如果您想在页面加载后更改它,那么您应该查看AJAX。其他解决方案(在包含后处理它)将需要输出缓冲区处理、DOM 处理和其他痛苦的例程,这些例程并不是真正的选择。

于 2013-01-27T02:57:46.283 回答