Phalcon - 视图

视图是呈现给最终用户的信息.可以将视图视为具有要显示的适当响应的网页.响应通过与模型交互的控制器接收.

特别是在Phalcon中,视图由Volt代码,PHP和HTML组成.一组特殊分隔符可用于进入Volt模式. {%...%} 用于执行for循环或赋值等语句, {{...}} 将表达式的结果打印到模板.

Phalcon中的视图基本上分为两种类型 :

  • Volt

  • phtml

Volt

以下是我们输出的截图为上一章中的项目 demo1 创建.

Views

此输出是在文件 views/index/index.volt 的帮助下实现的.

Volt文件的功能

  • 这是一个用C语言编写的模板,与其他语言相比速度相当快.

  • 它包括一组高度集成的组件,这些组件在Phalcon中非常有用.

  • 它也可以用作支架 - 独立组件.

  • Volt编译为纯PHP代码.

以下是 index.volt 的代码,默认情况下为任何项目加载.

<!--<div class = "page-header"> 
   <h1>Congratulations!</h1> 
</div>--> 

<p>This is my first web application in Phalcon </p> 
<!--<p>You're now flying with Phalcon. Great things are about to happen!</p>

<p>This page is located at <code>views/index/index.volt</code></p>-->

分层渲染

Phalcon中的视图支持分层渲染和 Phalcon\Mvc\View 用作默认渲染组件.与使用C作为模板语言的伏特文件相比,该组件使用PHP作为模板引擎.

这些视图应具有 .phtml 扩展名.给定项目的默认视图目录包含以下三个文件 :

  • 操作视图 : 调用此视图以执行特定操作.执行"show"操作时会调用它.

  • 控制器布局 : 此视图存在于layouts文件夹中.例如,C:\xampp\htdocs\demo\app\views\layouts它调用与适当控制器关联的方法调用.布局中实现的代码将在需要时实施.

  • 主要布局 : 此布局视图将调用主操作,并将显示Web应用程序中的每个控制器或操作.

.volt之间的差异和.phtml文件

.volt.phtml
.当应用程序中设置的模板引擎用C语言编写时,使用伏特扩展.phtml是当模板引擎是PHP本身时使用
它可以用作独立组件它不能用作独立组件
Volt视图被编译为PHP代码phtml文件本身包含PHP代码,因此没有必要Phalcon框架中的编译

变量

变量分配和更改模板使用'set'.

声明一个数组

{% set fruits = ['Apple', 'Banana', 'Orange'] %}

声明一个字符串

{% set name = "John Kennedy" %}

评论

评论也可能被添加使用 {#...#} 分隔符到模板.其中的所有文本都在最终输出中被忽略.

{# note: this is a comment 
   {% set price = 100; %} 
#}

示例

{% set fruits = ['Apple', 'Banana', 'Orange'] %} 

<h1>Fruits</h1> 

<ul> 
   {% for fruit in fruits %} 
   <li>{{ fruit|e }}</li> 
   {% endfor %} 
</ul>  

{% set robots = ['Voltron', 'Astro Boy', 'Terminator', 'C3PO'] %}  

<ul> 
   {% for robot in robots %} 
   <li>{{ robot }}</li> 
   {% endfor %} 
</ul>

输出

代码将生成以下输出屏幕 :

输出屏幕