亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > PHP > 正文

yii實現圖片上傳及縮略圖生成的方法

2024-05-04 23:28:35
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了yii實現圖片上傳及縮略圖生成的方法,詳細分析了圖片的上傳及縮略圖的生成原理與實現方法,是非常實用的技巧,需要的朋友可以參考下
 
 

本文實例講述了利用yii框架來實現圖片上傳功能并在上傳成功之后自動生成縮略圖的方法,分享給大家供大家參考。具體實現方法如下:

Action文件:

復制代碼代碼如下:
<?php
/**
 * TestController.php
 * Created on: 2014-1-26 12:59:36 by Outsider
 */
class TestController extends CController {
 
    /**
     * 縮略圖片生成
     * @ path 圖片路徑
     * @ width 圖片寬度
     * @ height 圖片高度
     */
    public function actionGetThumb($path, $w, $h) {
        $file_name = md5($path . $w . $h);
        if (file_exists('./temp/' . $file_name . '.jpg')) {
            header('location:/temp/' . $file_name . '.jpg');
            Yii::app()->end();
        }
        Yii::import("ext.EPhpThumb.EPhpThumb");
        $thumb = new EPhpThumb();
        $thumb->init();
        $thumb->create('.' . $path)
                ->adaptiveResize($w, $h)
                ->save('./temp/' . $file_name . '.jpg')
                ->show();
    }
 
    /*
     * 圖片顯示
     */
 
    public function actionList() {
        $attache = Attache::model();
        $list = $attache->findAll();
        $this->render('list', array('list' => $list));
        die;
    }
 
    /**
     * 文件上傳
     */
    public function actionIndex() {
        $path = getcwd() . 'uploads';
        $dir = DIRECTORY_SEPARATOR . date('Y') . DIRECTORY_SEPARATOR . date('m');
        $dir = str_replace("/", "/", $dir);
        $uploads_dir = str_replace("/", "/", $path . $dir);
        if (!is_dir($uploads_dir) || !is_writeable($uploads_dir)) {
            mkdir($uploads_dir, 0777, TRUE);
            touch($uploads_dir . '/index.html');
        }
        $uploaded = false;
        $model = new Upload();
        if (isset($_POST['Upload'])) {
            $model->attributes = $_POST['Upload'];
            $file = CUploadedFile::getInstance($model, 'file');
            $newName = substr(md5($file->extensionName . round((microtime(true) * 1000))), 0, 17) . '.' . $file->extensionName; 
            $file_name = $uploads_dir . '/' . $newName;
            if ($model->validate()) {
                $attache = new Attache();
                $uploaded = $file->saveAs($file_name, TRUE);
                $attache->name = $file->getName();
                $attache->path = $dir . '/' . $newName;
                $attache->create_time = time();
                $attache->save();
            }
        }
 
        $this->render('index', array(
            'model' => $model,
            'uploaded' => $uploaded,
            'dir' => $uploads_dir,
        ));
    }
}

 

Upload.php:

復制代碼代碼如下:
<?php
class Upload extends CFormModel {
 
    public $file;
 
    public function rules() {
        return array(
            array('file', 'file', 'types' => 'jpg, gif, png,zip'),
        );
    }
}

圖片顯示頁面:

 

自定義圖片大小,縮略圖自動生成

復制代碼代碼如下:
<?php
/**
 * list.php
 * Created on: 2014-1-26 13:12:01 by Outsider
 */
?>
<?php foreach ($list as $v): ?>
    <img src="<?php echo Yii::app()->createUrl('test/getThumb', array('path' => '/uploads' . $v['path'], 'w' => '150', 'h' => '150')) ?>">
<?php endforeach; ?>

 

圖片上傳表單:

復制代碼代碼如下:
<?php if($uploaded):?>
<p>File was uploaded. Check <?php echo $dir?>.</p>
<?php endif ?>
<?php echo CHtml::beginForm('','post',array
        ('enctype'=>'multipart/form-data'))?>
    <?php echo CHtml::error($model, 'file')?>
    <?php echo CHtml::activeFileField($model, 'file')?>
    <?php echo CHtml::submitButton('Upload')?>
<?php echo CHtml::endForm()?>

 

希望本文所述對大家基于Yii框架的PHP程序設計有所幫助。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品美女久久久久久免费| 国产精自产拍久久久久久蜜| 亚洲剧情一区二区| 欧美性生活大片免费观看网址| 亚洲精品国偷自产在线99热| 欧美日韩第一页| 成人a视频在线观看| 午夜精品蜜臀一区二区三区免费| 成人欧美一区二区三区在线湿哒哒| 欧美激情精品久久久久| 久久99精品视频一区97| 欧美寡妇偷汉性猛交| 在线观看视频亚洲| 亚洲欧美日韩精品| 日本精品久久久久久久| 亚洲欧美日韩综合| 亚洲一品av免费观看| 国产精品视频区1| 国产精品a久久久久久| 成人深夜直播免费观看| 91在线视频九色| 日韩av在线资源| 日韩精品在线观看网站| 深夜福利一区二区| 日韩禁在线播放| 九九精品在线视频| 一区二区日韩精品| www.色综合| 中文字幕免费国产精品| 欧美激情亚洲激情| 亚洲va国产va天堂va久久| 亚洲激情在线观看视频免费| 亚洲欧美精品中文字幕在线| 久久久人成影片一区二区三区观看| 日韩最新在线视频| 欧美日韩在线视频一区二区| 久久精品国产欧美激情| 色狠狠久久aa北条麻妃| 国模私拍一区二区三区| 欧美黄色片视频| 国产精品观看在线亚洲人成网| 日韩精品久久久久久久玫瑰园| 中文字幕在线看视频国产欧美在线看完整| 欧美一级淫片丝袜脚交| 少妇高潮久久久久久潘金莲| 欧美激情成人在线视频| 亚洲精品日韩久久久| 国产a∨精品一区二区三区不卡| 亚洲欧洲黄色网| 91久久国产综合久久91精品网站| 久久久中文字幕| 日韩精品免费在线播放| 欧美又大又粗又长| 黄色精品一区二区| 啪一啪鲁一鲁2019在线视频| 国产精品亚洲激情| 日韩在线免费视频| 日本亚洲欧美成人| 欧美专区国产专区| 亚洲欧美日韩中文视频| 国产精品伦子伦免费视频| 日韩国产欧美区| 欧美一级淫片videoshd| 91久久久精品| 九九久久综合网站| 亚洲综合中文字幕在线观看| 伊人一区二区三区久久精品| 欧美亚洲在线播放| 欧美成人午夜激情在线| 久久免费少妇高潮久久精品99| 欧美丝袜美女中出在线| 日韩小视频在线| 98视频在线噜噜噜国产| 日韩免费在线播放| 国产精品福利久久久| 日韩av中文字幕在线免费观看| 国产精品黄色影片导航在线观看| 成人久久久久久久| 亚洲精品电影网站| 中文字幕精品久久久久| 色yeye香蕉凹凸一区二区av| 久久久伊人日本| 欧美午夜www高清视频| 欧美午夜精品久久久久久久| 日韩欧美大尺度| 国产精品高清网站| 91香蕉国产在线观看| 久久综合88中文色鬼| 欧美成人在线免费| 亚洲成**性毛茸茸| 亚洲综合精品一区二区| 久久九九有精品国产23| 毛片精品免费在线观看| 久久亚洲精品一区二区| 一区二区三区国产在线观看| 久久天天躁狠狠躁夜夜躁| 国产精品久久久久久久久粉嫩av| 国产区亚洲区欧美区| 欧美影院成年免费版| 成人精品在线观看| 日韩av快播网址| 日本人成精品视频在线| 欧美成年人在线观看| 亚洲综合日韩中文字幕v在线| 久久久人成影片一区二区三区| 一本色道久久综合狠狠躁篇怎么玩| 91国内精品久久| 日韩欧美国产激情| 日韩国产欧美精品在线| 久久99国产综合精品女同| 中文字幕亚洲综合久久筱田步美| 亚洲一区二区国产| 日韩成人中文字幕在线观看| 不卡av电影在线观看| 韩日精品中文字幕| 久久视频在线视频| 亚洲在线观看视频| 久久人人看视频| 欧美电影免费在线观看| 中国china体内裑精亚洲片| 伊人久久精品视频| 岛国av一区二区在线在线观看| 日韩国产精品一区| 97视频免费在线观看| 高清一区二区三区四区五区| 国产精品视频一区二区高潮| 欧美性视频网站| 欧洲日韩成人av| 欧美大人香蕉在线| 日韩欧美一区二区在线| 丝袜美腿精品国产二区| 日本高清+成人网在线观看| 国产成+人+综合+亚洲欧美丁香花| 亚洲天堂av电影| 国产成人精品一区二区三区| 欧美成人精品xxx| 91久久久久久久久久久久久| 成人国内精品久久久久一区| 亚洲精品久久久久中文字幕欢迎你| 欧美激情喷水视频| 日本aⅴ大伊香蕉精品视频| 97在线视频国产| 亚洲精品aⅴ中文字幕乱码| 成人免费视频网| 日韩欧美中文字幕在线观看| 欧美性猛交xxxx乱大交蜜桃| 欧美二区在线播放| 久久这里有精品| 欧美刺激性大交免费视频| yw.139尤物在线精品视频| 国产精品∨欧美精品v日韩精品| 午夜精品蜜臀一区二区三区免费| 久久久综合免费视频| 日韩av在线播放资源| 一区二区三区久久精品| 九九久久精品一区| 九色精品美女在线| 91精品国产91久久久久久最新| 亚洲人成电影网| www.99久久热国产日韩欧美.com| 亚洲欧美三级伦理| 亚洲黄色av女优在线观看| 成人www视频在线观看| 欧美日韩性生活视频|