2014-10-09 49 views
11

如何在不使用Laravel自己的功能(如assets())的情况下访问存储在public/images文件夹内的图像?访问laravel中的公用文件夹内的图像

我只想获取存储在图像文件夹中的图像的直接URL。

如:

localhost/webapp/images/stackoverflow.png 

当请求的链接我应该得到的直接图像。

回答

20

如果你是我创造我自己的资产帮手刀片模板

{{ URL::to('/') }}/images/stackoverflow.png

+0

这对我的作品! – Kasthuriraajan 2018-03-01 15:43:56

11

内。

首先,我定义的资产类型和路径app/config/assets.php

return array(

    /* 
    |-------------------------------------------------------------------------- 
    | Assets paths 
    |-------------------------------------------------------------------------- 
    | 
    | Location of all application assets, relative to the public folder, 
    | may be used together with absolute paths or with URLs. 
    | 
    */ 

    'images' => '/storage/images', 
    'css' => '/assets/css', 
    'img' => '/assets/img', 
    'js' => '/assets/js' 
); 

那么实际Asset类:

class Asset 
{ 
    private static function getUrl($type, $file) 
    { 
     return URL::to(Config::get('assets.' . $type) . '/' . $file); 
    } 

    public static function css($file) 
    { 
     return self::getUrl('css', $file); 
    } 

    public static function img($file) 
    { 
     return self::getUrl('img', $file); 
    } 

    public static function js($file) 
    { 
     return self::getUrl('js', $file); 
    } 

} 

所以我认为我可以做到这一点,显示的图像:

{{ HTML::image(Asset::img('logo.png'), "My logo")) }} 

或者像这样实现一个Java脚本:

{{ HTML::script(Asset::js('my_script.js')) }} 
8

只需将您的图像放入公共目录(公共/ ...文件夹或直接图像)。
公共目录默认由laravel应用程序呈现。
假设我在public/images/myimage.jpg中存储了图像。
然后在你的HTML视图,页面,如:(image.blade.php)

<img src="{{url('/images/myimage.jpg')}}" alt="Image"/> 
相关问题