如何更換沒有找到圖片通常你會包括圖像與在Symfony的
<img src="{{ asset('location') }}"/>
但是,如果不存在圖像,404是拋出一個破碎的圖像顯示。如何顯示另一張圖片而不是一張破碎的圖片?有沒有辦法做到這一點在樹枝?我還使用SonataMediaBundle這說明像這樣的圖像
:
{% path media, 'small' %}
覺得那裏會是束內的方式來檢查,如果圖像存在,但事實並非如此。
如何更換沒有找到圖片通常你會包括圖像與在Symfony的
<img src="{{ asset('location') }}"/>
但是,如果不存在圖像,404是拋出一個破碎的圖像顯示。如何顯示另一張圖片而不是一張破碎的圖片?有沒有辦法做到這一點在樹枝?我還使用SonataMediaBundle這說明像這樣的圖像
:
{% path media, 'small' %}
覺得那裏會是束內的方式來檢查,如果圖像存在,但事實並非如此。
嘗試使用的onerror如果你不想來檢查文件是否存在手
<img src="{{ path("image.svg") }}" onerror="this.src='{{path("image.png") }}'"/>
之前,您可以重寫做到這一點。在項目目錄中創建一個.htaccess文件。添加以下行。
RewriteEngine On
<FilesMatch "\.(jpe?g|png|gif)$">
ErrorDocument 404 "/img/default-image.gif"
</FilesMatch>
編輯
可以使用DirectoryMatch
匹配目錄。你也可以在裏面嵌套FilesMatch
。
<DirectoryMatch "^/www/xyz/"> <FilesMatch "\.(jpe?g|png|gif)$"> ErrorDocument 404 "/img/default-image.gif" </FilesMatch> </DirectoryMatch>
這對於一般的丟失圖像很有用,但是如果我想在不同的樹枝文件中使用不同的圖像呢? –
@GeorgeIrimiciuc檢查我的編輯。 – Harikrishnan
是啊,測試文件是否存在自己寫的代碼 – RiggsFolly
http://stackoverflow.com/questions/14231967/symfony2-checking-if-file-exists幾行 – chalasr
你應該寫你的應用程序,從來沒有顯示不存在的圖像。例如。如果用戶不上傳圖片,請執行'$ user-> setImage('default.jpg');'等 – malcolm