我试图包含另一个视图,如果它存在.我有一个主页面.blade.PHP,它应该呈现所选页面的内容.在应用程序的后端,我得到一个包含所有内容的平面数组(id和name).所以现在如果存在模板我想渲染它,但首先我需要检查模板是否确实存在.
我现在得到以下代码:
@foreach($flattenPage as $page) @if(file_exists('templates.'.strtolower($page['name']))) @include('templates.'.strtolower($page["name"])) @endif @endforeach
问题是它不会通过if语句.
我也尝试过:
@if(file_exists('../templates/'.strtolower($page['name']).'.blade.PHP'))
当前模板是views / page / show.blade.PHP,我需要渲染views / templates / myContent.blade.PHP
解决方法
如果需要确定是否存在视图 – 可以使用exists方法(
as described in the docs)
@if (view()->exists('templates.'.strtolower($page["name"]))) @include('templates.'.strtolower($page["name"])) @endif