什么是 Yii2 中的区块


What is Block in Yii2

我一直在尝试从 Yii2 指南中了解 Yii2 中的Block。在块部分,我找到了一些代码,例如:

<?php $this->beginBlock('block1'); ?>
...content of block1...
<?php $this->endBlock(); ?>

我正在尝试实现此代码并将其放入view文件中,但没有得到结果或输出,因为我是新手并且不了解如何使用它。你能告诉我什么是Block,如何使用它以及为什么我们应该使用它。

块类扩展了 Yii widget 类,用于一个目的。允许将"代码块"作为字符串返回,而不是内联显示。

例如,如果您想多次重用,这是在运行时生成的一段 html,这可能很有用。

实现

要将视图中的代码部分声明为块,请首先用问题中建议的开始和结束语句将其括起来,并具有适当的名称

<?php $this->beginBlock('myblock') ?>
...<div>your html & php mixed code here</div>....
<?php $this->endBlock() ?>

(如果您还需要在原始位置显示第二个参数,则可以将第二个参数作为 true 添加到开始块)

接下来,您可以根据需要多次在同一视图或子视图中的任何位置使用该命名块

echo $this->blocks['myblock']