Heim  >  Artikel  >  Backend-Entwicklung  >  Beispiel einer thinkPHP-Implementierung zum Hochladen von Bildern und Generieren von Miniaturansichten

Beispiel einer thinkPHP-Implementierung zum Hochladen von Bildern und Generieren von Miniaturansichten

不言
不言Original
2018-05-10 10:00:201128Durchsuche

In diesem Artikel wird hauptsächlich die Implementierung der Funktionen zum Hochladen von Bildern und zum Generieren von Miniaturansichten in thinkPHP vorgestellt. Er analysiert das Hochladen von Bildern und das Erstellen von Miniaturansichten, das Generieren, das Speichern, das Schreiben von Datenbanken und andere damit verbundene Betriebsfähigkeiten in Form von Beispielen zu Folgendem

Das Beispiel in diesem Artikel beschreibt, wie thinkPHP die Funktionen des Hochladens von Bildern und der Generierung von Miniaturansichten implementiert. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:

Notieren Sie die Methode zum Hochladen von Bildern (Hochladen) und zum Generieren von Miniaturansichten (Bild) in thinkPHP

Sie müssen enctype="multipart/form-data"

<form action="__SELF__" method="post" enctype="multipart/form-data">
 <table width="100%"class="cont">
   <tr>
   <td>照片:</td>
   <td width="20%"><input type="file" name="pic" id="pic" /></td>
   <td colspan="3"><input class="btn" type="submit" value="提交" /></td>
   <td> </td>
    </tr>
  </table>
</form>

PHP-Code

<?php
namespace Admin\Controller;
use Org\Util\Date;
use Think\Controller;
use Think\Image;
use Think\Upload;
class UserController extends Controller {
  public function add(){
    $user = M(&#39;user&#39;);
    if(!empty($_POST)){
      $user = $user->create();
      //判断传入的图片有没有问题
      if($_FILES[&#39;pic&#39;][&#39;error&#39;] == 0){
        $config = array(
          &#39;rootPath&#39;  => &#39;./Application/public/image/&#39; // 设置图片保存路径
        );
        //new一个上传模型
        $upload = new Upload($config);
        //上传图片
        $pic = $upload->uploadOne($_FILES[&#39;pic&#39;]);
        //将图片保存到数据库中
        $user[&#39;big_pic&#39;] = $pic[&#39;savepath&#39;].$pic[&#39;savename&#39;];
        //生成缩略图
        $img = new Image();
        //大图片的路径
        $big_img = $upload->rootPath.$user[&#39;big_pic&#39;];
        //打开大图片
        $img->open($big_img);
        //设置图片大小
        $img->thumb(200,300);
        //设置绝对路径
        $small_img = $upload->rootPath.$pic[&#39;savepath&#39;].&#39;small_&#39;.$pic[&#39;savename&#39;];
        //保存
        $img->save($small_img);
        //将图片名称存入数据库
        $user[&#39;img&#39;] = $pic[&#39;savepath&#39;].&#39;small_&#39;.$pic[&#39;savename&#39;];
      }
      $user[&#39;create_date&#39;] = date("Y-m-d H:i:s");
      $msg = "添加失败";
      if(M("user")->add($user))
        $msg = "添加成功";
      $this->redirect(show_list,null,3,$msg);
    }
    $this->display();
  }

Das Obige ist das Ganze Inhalt dieses Artikels. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website.

Verwandte Empfehlungen:

ThinkPHP implementiert die Funktion zum Hochladen von Anhängen

thinkphp implementiert das Hochladen und Herunterladen von Dateien

Das obige ist der detaillierte Inhalt vonBeispiel einer thinkPHP-Implementierung zum Hochladen von Bildern und Generieren von Miniaturansichten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn