標籤:shang 效果 public 分享 png path else 檔案 檔案夾
實現檔案上傳功能需要控制器,方法然後是顯示的頁面
1.在Controller下建立一個控制器TestController.class.php
2.建立操作方法
<?phpnamespace Home\Controller;use Think\Controller;class TestController extends Controller {public function shangchuan(){$this->show();//顯示模版頁面}}
3.在Home檔案夾裡View檔案夾下建立一個Test檔案夾,在Test檔案夾下建立上傳的模版頁
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>無標題文檔</title><script src="__ROOT__/Public/js/jquery-3.2.0.min.js"></script></head><body><h1>檔案上傳</h1><form action="__CONTROLLER__/wjsc" method="post" enctype="multipart/form-data"><input type="file" name="file"/><input type="submit" value="上傳"/></form></body></html>
4.讓上傳指向一個操作方法,建立一個wjsc操作方法
<?phpnamespace Home\Controller;use Think\Controller;class TestController extends Controller {public function shangchuan(){$this->show();}public function wjsc(){$u = new \Think\Upload();//執行個體化上傳類 \是初始命名空間 Think是根命名空間 Upload是類$u->maxSize = 1024000;//設定檔案大小$u->rootPath = "./Public/";//檔案存放的根路徑$u->savePath = "./upload/";//設定當前上傳的檔案存放的位置$u->exts = array(‘jpg‘, ‘gif‘, ‘png‘, ‘jpeg‘);// 設定附件上傳類型$info = $u->upload();//上傳檔案並返迴文件資訊if($info){echo"上傳成功,檔案存放在:".$info["file"][‘savepath‘];}else{echo $u->getError();}}
看一下實現的效果:
會顯示檔案上傳的儲存路徑(相對於根路徑)
下面是供參考的上傳參數和檔案上傳資訊參數
ThinkPhp架構:檔案上傳