使用Laravel';s内置控制结构与使用原始php?

使用Laravel';s内置控制结构与使用原始php?,php,laravel,laravel-5,Php,Laravel,Laravel 5,Laravel中的刀片视图使用@符号提供了许多(if、循环、开关),这些符号似乎工作得很好,但我想知道使用它们是否比使用它们的等效原始php命令有任何优势 例如,在Laravel中,if语句如下所示: @if(statement) some html @endif <? if(statement) {?> some html <? } ?> 等效的原始php如下所示: @if(statement) some html @endif <

Laravel中的刀片视图使用@符号提供了许多(if、循环、开关),这些符号似乎工作得很好,但我想知道使用它们是否比使用它们的等效原始php命令有任何优势

例如,在Laravel中,if语句如下所示:

@if(statement)
    some html
@endif 
<? if(statement) {?>
    some html
<? } ?>
等效的原始php如下所示:

@if(statement)
    some html
@endif 
<? if(statement) {?>
    some html
<? } ?>

一些html
我正在将一个应用程序从Zend Framework v1后端升级到Laravel,并已切换到使用Laravel的控制结构,但我想知道,除了遵守Laravel的标准之外,是否还有其他优势?

如前所述:

Blade还为常见的PHP控制结构(如条件语句和循环)提供了方便的快捷方式。这些快捷方式提供了一种非常干净、简洁的方式来使用PHP控件结构,同时也让PHP对应方保持熟悉

如您所见,主要目的是创建阅读时“更干净”的Shorcut。更好的API


更新 正如@ceejayoz所提到的,它也是。Blade允许您创建自己的指令,以便在视图中使用。该指令还可以接收参数

延伸叶片 Blade允许您使用
指令
方法。当刀片编译器遇到自定义 指令,它将使用表达式调用提供的
回调
指令包含的

下面的示例创建一个
@datetime($var)
指令,该指令 格式化给定的
$var
,它应该是
日期时间的一个实例:

正如上面所说:

Blade还为常见的PHP控制结构(如条件语句和循环)提供了方便的快捷方式。这些快捷方式提供了一种非常干净、简洁的方式来使用PHP控件结构,同时也让PHP对应方保持熟悉

如您所见,主要目的是创建阅读时“更干净”的Shorcut。更好的API


更新 正如@ceejayoz所提到的,它也是。Blade允许您创建自己的指令,以便在视图中使用。该指令还可以接收参数

延伸叶片 Blade允许您使用
指令
方法。当刀片编译器遇到自定义 指令,它将使用表达式调用提供的
回调
指令包含的

下面的示例创建一个
@datetime($var)
指令,该指令 格式化给定的
$var
,它应该是
日期时间的一个实例:


写得更快,可读性更强,让你体验使用模板引擎,每个人都会使用模板引擎,因为前两点。是的,框架的要点是提供执行常见任务的常规方法。模板引擎使代码更易于编写、读取和调试。如果你问的是速度/性能,不要在这里浪费你的时间-你将永远不会获得任何明显的速度绕过模板捷径。把你的优化精力花在那些实际上会给你的代码带来可衡量差异的事情上。
写得更快,可读性更高,让你体验到使用模板引擎,每个人都使用模板引擎,这是因为前两点。是的,框架的重点是提供执行常见任务的常规方法。模板引擎使代码更易于编写、读取和调试。如果你问的是速度/性能,不要在这里浪费你的时间-你将永远不会获得任何明显的速度绕过模板捷径。把你的优化精力花在那些实际上会给你的代码带来可衡量差异的事情上。
加上,它是可扩展的,所以你可以制作自己的
@dosomethingawesome
语法,可能会做一些复杂的事情:Nice@ceejayoz,我也会添加它。另外,它是可扩展的,因此,您可以创建自己的
@dosomethingawesome
语法,这些语法可能会做一些复杂的事情:Nice@ceejayoz,我也会添加它。