我发现有时两者都可以吗?那真正的区别是什么呢?
例如,
<link rel="stylesheet" href="{{asset('resources/views/admin/style/css-ui.admin.css')}}">
和
<link rel="stylesheet" href="{{url('resources/views/admin/style/font/css/font-awesome.min.css')}}">
这两种形式都可以。
那么,差异是什么?
答案 0 :(得分:25)
考虑所需的URL类型/ URL的使用方式。为每种类型的URL使用单独的辅助方法的一个优点是它们可以具有不同的处理逻辑。例如,资产(例如CSS,图像等)可能涉及检查文件存在于文件系统中但不需要路由的分析类型,因为路由可能具有参数。
保留所有URL query string。
{{ url('search') }}
// http://www.example.com/search
{{ url('search', ['qevo', 'laravel']) }}
// http://www.example.com/search/qevo/laravel
只接受直接路径。
{{ asset('css/app.css') }}
// http://www.example.com/css/app.css
允许覆盖相对路线与绝对路线(默认)。
{{ route('user.profile', ['name'=>'qevo']) }}
// http://www.example.com/user/qevo/profile
{{ route('user.profile', ['name'=>'qevo'], false) }}
// /user/qevo/profile
答案 1 :(得分:10)
{{url}}
允许您创建指向您网站上的网址的链接 - 另一个好处是您可以将第二个参数设置为包含查询字符串参数的数组。
{{asset}
只允许您链接到公共目录中的资源 - 例如css/main.css
。
答案 2 :(得分:2)
asset()
方法用于包含CSS / JavaScript /图像文件。
url()
方法。
示例:资产
<script src="{{ asset('js/jquery.min.js') }}"></script>
示例:url
{{ url('image/welcome.png') }}
答案 3 :(得分:0)
URL::route
获取指向路由的URL。所以在你的情况下,如果你这样命名你的路线:
Route::get('/account/register', [
'name' => 'register',
'uses' => 'RegisterController@create'
]);
然后你就可以使用
了 <a href="{{ URL::route('register') }}" >Register 1</a>
在Blade模板中。