~~~
<?php
namespace Common\Common;
class ImageEdit{
/**
* [上傳圖片并生成縮略圖]
* @param [type] $imgName [圖片提交的表單名稱]
* @param [type] $dirName [圖片上傳的二級目錄]
* @param array $thumb
* [縮略圖生成,一個數組,傳幾個值生成幾個圖片]
* @return [type] [description]
*/
static public function uploadOne($imgName, $dirName, $thumb = array())
{
// 上傳LOGO
if(isset($_FILES[$imgName]) && $_FILES[$imgName]['error'] == 0)
{
$ic = C('IMAGE_CONFIG');
$upload = new \Think\Upload(array(
'rootPath' => $ic['rootPath'],
'maxSize' => $ic['maxSize'],
'exts' => $ic['exts'],
));// 實例化上傳類
$upload->savePath = $dirName . '/'; // 圖片二級目錄的名稱
// 上傳時指定一個要上傳的圖片的名稱,否則會把表單中所有的圖片都處理,之后再想其他圖片時就再找不到圖片了
$info = $upload->upload(array($imgName=>$_FILES[$imgName]));
if(!$info)
{
return array(
'ok' => 0,
'error' => $upload->getError(),
);
}
else
{
$ret['ok'] = 1;
$ret['images'][0] = $logoName = $info[$imgName]['savepath'] . $info[$imgName]['savename'];
// 判斷是否生成縮略圖
if($thumb)
{
$image = new \Think\Image();
// 循環生成縮略圖
foreach ($thumb as $k => $v)
{
$ret['images'][$k+1] = $info[$imgName]['savepath'] . 'thumb_'.$k.'_' .$info[$imgName]['savename'];
// 打開要處理的圖片
$image->open($ic['rootPath'].$logoName);
$image->thumb($v[0], $v[1])->save($ic['rootPath'].$ret['images'][$k+1]);
}
}
return $ret;
}
}
}
/*******************************************************
* 上傳圖片并生成縮略圖使用方法
* 用法:
* $ret=uploadOne('logo','Goods',array(
* array(600,600),
* array(300,300),
* array(100,100),
*
* ));
* 返回值:
* if($ret['ok']==1){
* $ret['images'][0]; //原圖地址
* $ret['images'][1]; //第一個縮略圖地址
* $ret['images'][2]; //第二個縮略圖地址
* $ret['images'][3]; //第三個縮略圖地址
* }else{
* $this->error=$ret['error'];
* return false;
* }
****************************************************/
/**
* [delImage 刪除圖片函數]
* @param [type] $img [圖片文件名數組]
* @return [type] [description]
*/
static public function delImage($img){
foreach ($img as $k => $v) {
unlink(C('IMAGE_CONFIG')['rootPath'].$v);
}
}
/**
* [showImage 顯示圖片函數]
* @param [type] $url [圖片名稱]
* @param string $width [顯示寬度]
* @param string $heigt [顯示高度]
* @return [type] [description]
*/
function showImage($url,$width='',$heigt=''){
$pt=C('IMAGE_CONFIG');
if($width)
$width="width='{$width}'";
if($heigt)
$height="height='{$height}'";
echo "<img $width $height src='{$pt['viewPath']}$url' />";
}
}
~~~
- PHP新特性
- 一些常識
- PHP常見header頭
- Nginx配置文件
- 常用工具類
- PHP實現的一個時間幫助類
- PHP原生生成EXCEL
- PHP地理位置計算
- PHP獲取服務器狀態
- 駝峰轉下劃線
- 百度地圖兩點坐標距離計算
- 判斷是否是url
- 郵件發送類
- 阿拉伯數字轉化為大寫
- 獲取漢字首個拼音
- 根據身份證號獲取星座
- 生成驗證碼類
- 生成唯一ID
- 身份證驗證類
- PHP中文轉拼音
- curl獲取網頁內容
- 快遞查詢api
- 快遞API類
- 上傳圖片類
- 股票類
- 找回密碼類
- 校驗數據規則
- PHP獲取收集相關信息
- 字符串截取助手函數
- 網頁中提取關鍵字
- 檢測瀏覽器語言
- PHP實現微信紅包拆分算法
- 常用函數
- 微信相關
- 網絡知識
- LX1 Laravel / PHP 擴展包視頻教程
- THINKPHP5學習
- 高級查詢
- Vue學習
- Vue全家桶
- Vue-CLI 3.x 自動部署項目至服務器
- Vue2全家桶
- Vue2全家桶之一:vue-cli(vue腳手架)超詳細教程
- Vue2全家桶之二:vue-router(路由)詳細教程,看這個就夠了
- Vue2全家桶之三:vue-resource(不推薦)----axios(推薦)
- 前端相關
- sublime text3 配置less編譯環境
- 服務器搭建相關
- supervisor
- Supervisor 安裝與配置 Linux進程管理
- supervisor 永不掛掉的進程 安裝以及使用
- Supervisor進程管理&開機自啟
- php實現定時任務
- 使用sublime text3 連接sftp/ftp(遠程服務器)
- Redis相關
- linux服務器重啟后導致redis數據丟失
- 搜索引擎SEO
- 百度收錄權威鏈接,指向真正需要收錄的地址rel
- 軟件相關
- sublime
- sublime Text3修改側邊欄的主題
- sublime和vscode比較
- Acrylic DNS Proxy 使用方法
- 技術類網址收藏