小編給大家分享一下php文件上傳代碼如何寫,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
目前創(chuàng)新互聯(lián)公司已為超過千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)站空間、網(wǎng)站托管、服務(wù)器租用、企業(yè)網(wǎng)站設(shè)計(jì)、天壇街道網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。php文件上傳代碼怎么寫
在初學(xué)php的時候,我們無法理解php文件上傳的代碼,以及上傳的邏輯,以下代碼從初學(xué)者的角度編寫,希望對大家有幫助!
需要用到的知識:
超級全局?jǐn)?shù)組:$_FILES
$_FILES['myfile']['name']的值是:客戶端文件系統(tǒng)的文件名稱
$_FILES['myfile']['type']的值是:客戶端傳遞的文件類型
$_FILES['myfile']['size']的值是:文件的字節(jié)大小
$_FILES['myflie']['tmp_name ']的值是:文件被上傳后在服務(wù)器存儲的臨時全路徑
$_FILES['myfile']['error']的值是:文件上傳的錯誤代碼
存儲在$_FILES['myfile']['error']中的值
值為0: 表示沒有發(fā)生任何錯誤
值為1: 表示上傳文件的大小超出了約定值。文件大小的大值在PHP配置文件中指定的,指令是:upload_max_filesize
值為2: 表示上傳文件大小超過了HTML表單隱藏域?qū)傩缘腗AX_FILE_SIZE元素所指定的大值
值為3: 表示文件只被部分上傳
值為4:表示沒有上傳任何文件
值為6: 表示找不到臨時文件夾
值為7: 表示文件寫入失敗
錯誤值對應(yīng)常量
UPLOAD_ERR_OK : 對應(yīng)值0
UPLOAD_ERR_INI_SIZE : 對應(yīng)值1
UPLOAD_ERR_FORM_SIZE : 對應(yīng)值2
UPLOAD_ERR_PARTIAL : 對應(yīng)值3
UPLOAD_ERR_NO_FILE : 對應(yīng)值4
UPLOAD_ERR_NO_TMP_DIR : 對應(yīng)值6
UPLOAD_ERR_CANT_WRITE : 對應(yīng)值7
upload.html 代碼如下
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>圖片上傳</title> </head> <body> <form action="upload.php" method="post" enctype="multipart/form-data"> <input type="file" name="pic"/> <!--通過表單限制上傳文件的大小 一定要在上傳按鈕前 大小以字節(jié)為主--> <input type="hidden" name="MAX_FILE_SIZE" value="8388608"/> <input type="submit" name="sub" value="上傳" /> </form> </body> </html>
upload.php 代碼如下
<?php //var_dump($_FILES); //exit; //判斷是否是文件上傳 $file = $_FILES; //第一個pic 是input 中的name值 if(is_uploaded_file($file['pic']['tmp_name'])) { //聲明允許上傳的文件類型 $allowType = ['image/png','image/jpeg','image/gif','image/jpg']; //正在上傳的文件的類型 $type = $file['pic']['type']; // echo $type; //判斷類型是否是允許的類型 if(!in_array($type,$allowType))//檢查數(shù)組中是否存在某個值,返回布爾型 { exit('上傳類型有誤'); } //判斷文件上傳的大小 if($file['pic']['size'] > 1024 * 1024 * 8) //以字節(jié)為主 1024*1024是1M { exit('上傳的文件太大'); } //設(shè)置新文件名 $filename = date('YmdHis',strtotime('now')).rand(1000,9999); //獲取上傳文件的后綴名 $name = $file['pic']['name']; //得到文件名字符串 $filestr = explode('.',$name); $ext = array_pop($filestr); //拼接新文件名 $newfilename = $filename.'.'.$ext; //拼接上傳文件的路徑 $path = './uploads/'; //絕對路徑 $abspath = $path.$newfilename; if(move_uploaded_file($file['pic']['tmp_name'],$abspath)) { echo '上傳成功'; }else{ echo '上傳失敗'; } }
看完了這篇文章,相信你對php文件上傳代碼如何寫有了一定的了解,想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)網(wǎng)站制作公司行業(yè)資訊頻道,感謝各位的閱讀!
文章名稱:php文件上傳代碼如何寫-創(chuàng)新互聯(lián)
網(wǎng)站網(wǎng)址:http://jinyejixie.com/article6/csdjog.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標(biāo)簽優(yōu)化、網(wǎng)站營銷、虛擬主機(jī)、網(wǎng)站設(shè)計(jì)、App開發(fā)、網(wǎng)頁設(shè)計(jì)公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容