Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/242.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何让Zend在每个页面上呈现动态页脚?_Php_Zend Framework - Fatal编程技术网

Php 如何让Zend在每个页面上呈现动态页脚?

Php 如何让Zend在每个页面上呈现动态页脚?,php,zend-framework,Php,Zend Framework,在我正在构建的应用程序中,我希望有一个漂亮的页脚,其中包含来自数据库的数据(标签)和一个联系人表单。所有的部分都是脚本,但现在我想把它们放在一起。 加载的每个页面的页脚元素都相同,只是内容不同 如何做到这一点,而不必在每个控制器上添加太多代码?将内容分配给不同的视图变量,然后根据该视图变量打印页脚内容。将内容分配给不同的视图变量,然后根据视图变量打印页脚内容。使用。为每个动态信息创建一个帮助器,如标记。然后你可以直接在视图上输出它。这避免了控制器中不必要的代码 下面是一个标签示例。创建一个Tag

在我正在构建的应用程序中,我希望有一个漂亮的页脚,其中包含来自数据库的数据(标签)和一个联系人表单。所有的部分都是脚本,但现在我想把它们放在一起。 加载的每个页面的页脚元素都相同,只是内容不同


如何做到这一点,而不必在每个控制器上添加太多代码?

将内容分配给不同的视图变量,然后根据该视图变量打印页脚内容。

将内容分配给不同的视图变量,然后根据视图变量打印页脚内容。

使用。为每个动态信息创建一个帮助器,如标记。然后你可以直接在视图上输出它。这避免了控制器中不必要的代码

下面是一个标签示例。创建一个
Tags.php
文件,其中包含:

class Zend_View_Helper_Tags extends Zend_View_Helper_Abstract {

    public function tags() {
        // build an array with all the tags and return it
    }
}
现在,在您的
footer.phtml
上,您可以像这样使用:

<?php $allTags = $this->tags();
foreach ($allTags as $tag) { ?>
    <a href="<?php echo $tag['url']; ?>"><?php echo $tag['name']; ?></a>
<?php } ?>

您可以使用
partiallop()
获得更清晰的视图。

使用。为每个动态信息创建一个帮助器,如标记。然后你可以直接在视图上输出它。这避免了控制器中不必要的代码

下面是一个标签示例。创建一个
Tags.php
文件,其中包含:

class Zend_View_Helper_Tags extends Zend_View_Helper_Abstract {

    public function tags() {
        // build an array with all the tags and return it
    }
}
现在,在您的
footer.phtml
上,您可以像这样使用:

<?php $allTags = $this->tags();
foreach ($allTags as $tag) { ?>
    <a href="<?php echo $tag['url']; ?>"><?php echo $tag['name']; ?></a>
<?php } ?>


您可以使用
partiallop()
来获得更清晰的视图。

实现这一点的最佳方法实际上是使用Zend_布局组件来实现两步视图模式。这意味着您将常规视图渲染为普通视图,但随后您需要Zend_Layout获取该输出并将其放置在整个模板中。整个模板将是您放置页脚的地方

最好的方法实际上是使用Zend_布局组件来实现两步视图模式。这意味着您将常规视图渲染为普通视图,但随后您需要Zend_Layout获取该输出并将其放置在整个模板中。整个模板将是您放置页脚的地方

谢谢你的回答!我是这样做的:-)谢谢你的回答!我是这样做的:-)