在PHP中@extends是什么意思?

时间:2018-04-14 12:49:07

标签: php laravel blade laravel-blade

为什么在PHP文件中使用@extends(使用@使用任何文本或字符串)?

@extends('front.layouts.master')

@section('content')
    // ...
@endsection

并告诉我@if@endif ifelse条件的示例,我对使用@语法或文字感到困惑,

示例代码

 @if ($errors->has('firstname'))
                    <span class="help-block">
                      <strong>{{ $errors->first('firstname') }}</strong>
                    </span>
                    @endif

1 个答案:

答案 0 :(得分:1)

我建议您阅读官方文档: https://laravel.com/docs/5.6/blade 这很容易理解。

@extends允许您创建一个刀片文件,该文件将位于另一个刀片中:

main.blade.php

<html>
<head>
    <script src="path/to/script"></script>
    @yield('additional_scripts)
</head>
<body>
    <div>This is some text I want to be shown in multiple views</div>
    @yield('content')
</body>
</html>

sub.blade.php

@extends('main')

@section('additional_scripts')
    <script src="path/to/some/other/script/only/needed/here"></script>
@endsection

@section('content')
    <div>I want this to visible only in this view</div>
@endsection

关于@if指令:我不确定这里有什么不明白的。你能更具体地说一下让你感到困惑的事吗?

@if(isset($variable))
    Output this text and this {{ $variable }}
@elseif(isset($anotherVariable))
    Output {{ $anotherVariable }}
@else
    Output just the text
@endif