ThinkPHP5 動態生成圖片縮略圖

需求場景php

 

不一樣終端(PC端、手機端、平板),不一樣界面(列表頁、詳情頁),對圖片大小的要求不同, 若是全部場景下都使用同一尺寸的圖片,勢必對會網絡帶寬及服務器性能形成必定的影響,由此須要服務器端可以根據前端的請求參數,自動匹配出相對應的圖片資源,以此來下降服務端的壓力,同時也能給用戶帶來更友好的用戶體驗。前端

具體步驟以下:node

一、開啓apache的rewrite功能,具體方法請自行百度。apache

二、修改.htaccessapi

 

 

以上配置規則表示,若是存在對應的圖片資源,則由apache直接返回,若是不存在,則轉發給/index.php/api/Attachment/thumbnail處理器去處理。瀏覽器

其它參數說明:服務器

$1:圖片所屬模塊swoole

$2:圖片上傳日期網絡

$3:原始圖片名稱(不含後綴)性能

$4:目標圖片寬度

$5:目標圖片高度

$6:圖片後綴

友情提示:根據圖片存儲規則的不一樣,此處的配置規則及參數能夠做相應的調整。

三、新增縮略圖處理程序,此處爲Attachment 文件,內容以下:

 

 四、vendor/topthink/think-image/src/Image.php文件中新增一個方法,內容以下:

 

 

五、訪問示例

在瀏覽器中輸入:http://域名/public/upload/news/20190325/442b8dba3f706cf6822c1255bcaa68de_320_240.jpg,將會看到一張寬320,高240的圖片。

有須要學習交流的友人請加入交流羣的我們一塊兒,羣內都是1-7年的開發者,但願能夠一塊兒交流,探討PHP,swoole這塊的技術 或者有其餘問題 也能夠問,獲取swoole或者php進階相關資料私聊管理便可

別忘了點贊哦,按期分享乾貨

點此加入該羣​jq.qq.com

相關文章
相關標籤/搜索