【发布时间】:2016-07-15 13:26:38
【问题描述】:
大家好, 我试图比较刀片模板中的 2 个变量
我的控制器
$files = \File::files('images');
foreach ($files as $file) {
$info[] = pathinfo($file);
}
$books = File::where('status', 1)->select('name')->get();
return view('cataloged.read', compact(['info','books']));
在我看来 试试这样的
@foreach($info as $inf)
@if(isset($books))
@if($inf['basename'] == $books->name)
Match
@else
No Match
@endif
@endif
@endforeach
这项工作仅适用于最后一条记录 - 我的数据库中有 2 条记录 - 所以在这种情况下它只适用于第二条记录......
我该怎么办?
感谢大家的帮助!
编辑
@foreach($books as $book)
@foreach($info as $file)
@if($book->name == $file['basename'])
<p>Book</p>
@else
<p>No Book</p>
@endif
@endforeach
@endforeach
我的数据库中只有 4 本书,所以这很好用
@if($book->name == $file['basename'])
<p>Book</p>
@endif
书 书 书 预订
但是当我使用@else 时,我会像这样开始 没有书 6 次 没有书 6 次 没有书 6 次 书没书6次
【问题讨论】:
-
Books 是一个数组,因此您也需要对其进行迭代
-
两个文件在同一个目录下?
标签: laravel laravel-5.2 blade