我正在使用laravel 5.6,我正在尝试检查我当前的URL是否在@if
语句中。
我看到其他一些文章指出可以像这样@if(Request:url() === 'url to check')
来完成。但是我看到的那个特定的帖子是Laravel 4的解决方案。有人知道如何获取当前URL并放入Laravel 5.6的@if
语句中吗?
示例
@if(Request::url() === '/dashboard/attendance/report')
<a href="#" class="btn btn-danger" target="_blank">Button</a>
@endif
答案 0 :(得分:1)
我将通过以下方式解决此问题。
@if(str_contains(url()->current(), '/dashboard/attendance/report'))
<a href="#" class="btn btn-danger" target="_blank">Button</a>
@endif
str_contains()
函数检查字符串(参数#1)是否包含第二个字符串。我更喜欢此函数,因为Laravel url()
函数返回完整的url,而您想检查url是否包含某个路径。
url()->current()
的文档可以在这里找到:
https://laravel.com/docs/5.6/urls#accessing-the-current-url
编辑:
确保/dashboard/attendance/report
在当前网址末尾的一种方法是,可以使用以下命令:
@if(substr(url()->current(), -1) == '/dashboard/attendance/report'))
<a href="#" class="btn btn-danger" target="_blank">Button</a>
@endif
答案 1 :(得分:1)
您不应检查URL,而应检查路由。我会这样。
@if (request()->is('admin/myRoute'))
[do stuff]
@endif