我正在使用Laravel 4。我想使用Laravel的刀锋模板引擎在视图中访问@if条件内的当前URL,但我不知道如何做到这一点。

我知道可以使用<?php echo URL::current();但是在@if blade语句中是不可能的。

有什么建议吗?


当前回答

你可以使用这段代码来获取当前URL:

echo url()->current();

echo url()->full();

这是我从Laravel的文件中得到的。

其他回答

对于拉拉维尔 5.5+

<a class="{{ Request::segment(1) == 'activities'  ? 'is-active' : ''}}" href="#">
                              <span class="icon">
                                <i class="fas fa-list-ol"></i>
                              </span>
                            Activities
                        </a>

要在刀片视图中获得当前url,您可以使用以下,

<a href="{{url()->current()}}">Current Url</a>

你可以用下面的代码进行比较,

@if (url()->current() == 'you url')
    //stuff you want to perform
@endif
class="nav-link {{ \Route::current()->getName() == 'panel' ? 'active' : ''}}"

也许你应该试试这个:

<li class="{{ Request::is('admin/dashboard') ? 'active' : '' }}">Dashboard</li>

与使用URL::path()来检查当前路径位置不同,您可能需要考虑Route::currentRouteName(),以便万一您更新了路径,您不需要再次浏览所有页面来更新路径名称。