我想扩展默认布局并添加布局部分但我不想使用Blade Syntax。在phpstorm中,Blade语法会生成错误,IDE会停止自动完成,并且根本不会识别php标记(仅在我在action()中使用@符号后)。
所以我的问题是如何转换
@extends('layouts.default')
@section('content')
@stop
进入php标签。
答案 0 :(得分:1)
查看Laravel的源代码(Illuminate\View\Compilers\BladeCompiler
),它是:
@extends('layouts.default')
这是最棘手的部分。通常,当您使用@extends
时,Laravel会将其编译为:但将其添加到最后回显的footer
变量中。如果你在视图的末尾而不是在开头添加它,它也应该起作用。 (至少它在我做过的简单测试中起作用)
<?php echo $__env->make('layouts.default', array_except(get_defined_vars(), array('__data', '__path')))->render(); ?>
@section('content')
<?php $__env->startSection('content'); ?>
@stop
<?php $__env->stopSection(); ?>
但是,如果您使用的是PhpStorm 8,则实际上支持Blade语法,并且我从未遇到过问题。 What's new in PhpStorm 8?