PHP上传图片三个步骤
生活随笔
收集整理的這篇文章主要介紹了
PHP上传图片三个步骤
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1. 上傳圖片三步驟
第一步:首先判斷文件類型是否為圖片格式,若是則上傳文件;
第二步:然后重命名文件(一般都是避免上傳文件重名,現在基本上都是以為時間來命名);
第三步:最后把文件上傳到指定目錄,成功上傳后輸出上傳圖片的預覽。
2. 代碼
(1)判斷文件類型是否為圖片類型
1 <?php 2 function type(){ 3 return substr(strrchr($HTTP_POST_FILES['file']['name'],'.'),1); 4 } 5 ?>說明:
(2)若是圖片,則上傳文件,然后根據時間重命名文件
1 if(!in_arry(strtolower(type()),$type)){ 2 $text=implode('.',$type); 3 echo "您只能上傳以下類型文件: ",$text,"<br>"; 4 }else{ 5 $filename=explode(".",$_FILES['userfile']['name']);//把上傳的文件名以“.”號為準做一個數組。 6 $time=date("m-d-H-i-s");//去當前上傳的時間 7 $filename[0]=$time;//取文件名t替換 8 name=implode(".",$filename); //上傳后的文件名 9 $uploadfile=$uploaddir.$name;//上傳后的文件名地址 10 }這個步驟也要分三步:
首先,寫一個能上傳類型的數組;?$type=array("jpg","gif","bmp","jpeg","png");?
然后,判斷文件合法性;
最后,給文件重名。
說明:
- strtolower:把字符串的字母全部轉換為小寫字母.
- in_array: 函數在數組中搜索給定的值。
- implode:函數把數組元素組合為一個字符串
- random:隨機生成的數
- $_FILES['userfile']['name']:上傳文件名稱
- uploaddir:自己定義的變量。比如在同一個文件夾里面,你想把上傳的文件放到這個文件夾的FILE文件夾下,你可以這樣定義uploaddir:自己定義的變量。比如在同一個文件夾里面,你想把上傳的文件放到這個文件夾的FILE文件夾下,你可以這樣定義uploaddir="./file/";注意寫法
- $_FILES["file"]["name"] - 被上傳文件的名稱
- $_FILES["file"]["type"] - 被上傳文件的類型
- $_FILES["file"]["size"] - 被上傳文件的大小,以字節(jié)計
- $_FILES["file"]["tmp_name"] - 存儲在服務器的文件的臨時副本的名稱
- $_FILES["file"]["error"] - 由文件上傳導致的錯誤代碼
?
(3)最后把文件上傳到指定目錄,成功上傳后輸出上傳圖片的預覽
1 if(move_uploaded_file($_FILES['userfile']['tmp_name'],$uploadfile)){ 2 echo "<center>您的文件已經上傳完畢 上傳圖片預覽: </center><br><center><img src='$uploadfile'></center>"; 3 echo "<br><center><a href='javascrīpt:history.go(-1)'>繼續(xù)上傳</a></center>"; 4 }else{ 5 echo "傳輸失敗!"; 6 }move_uploaded_file()?函數是PHP系統(tǒng)函數,將上傳的文件移動到新位置。
語法:?move_uploaded_file(file,newloc)?
注釋:本函數僅用于通過 HTTP POST 上傳的文件。
注意:如果目標文件已經存在,將會被覆蓋。
本文轉自ZH奶酪博客園博客,原文鏈接:http://www.cnblogs.com/CheeseZH/p/4567111.html,如需轉載請自行聯(lián)系原作者
總結
以上是生活随笔為你收集整理的PHP上传图片三个步骤的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 视频类搜索引擎优化教程侧重点
- 下一篇: RedHat 7.2配置本地yum源