日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

base64的php文件上传,PHP传统文件上传和Base64位文件上传

發布時間:2024/9/3 php 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 base64的php文件上传,PHP传统文件上传和Base64位文件上传 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、基本知識

通過使用 PHP 的全局數組 $_FILES,你可以從客戶計算機向遠程服務器上傳文件。

第一個參數是表單的 input name,第二個下標可以是 "name", "type", "size", "tmp_name" 或 "error"。就像這樣:

$_FILES["file"]["name"] - 被上傳文件的名稱

$_FILES["file"]["type"] - 被上傳文件的類型

$_FILES["file"]["size"] - 被上傳文件的大小,以字節計

$_FILES["file"]["tmp_name"] - 存儲在服務器的文件的臨時副本的名稱

$_FILES["file"]["error"] - 由文件上傳導致的錯誤代碼

這是一種非常簡單文件上傳方式。基于安全方面的考慮,您應當增加有關什么用戶有權上傳文件的限制。

二、常用上傳

if ((($_FILES["file"]["type"] == "image/gif")

|| ($_FILES["file"]["type"] == "image/jpeg")

|| ($_FILES["file"]["type"] == "image/pjpeg"))

&& ($_FILES["file"]["size"] < 20000))

{

if ($_FILES["file"]["error"] > 0)

{

echo "Return Code: " . $_FILES["file"]["error"] . "

";

}

else

{

echo "Upload: " . $_FILES["file"]["name"] . "

";

echo "Type: " . $_FILES["file"]["type"] . "

";

echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb

";

echo "Temp file: " . $_FILES["file"]["tmp_name"] . "

";

if (file_exists("upload/" . $_FILES["file"]["name"]))

{

echo $_FILES["file"]["name"] . " already exists. ";

}

else

{

move_uploaded_file($_FILES["file"]["tmp_name"],

"upload/" . $_FILES["file"]["name"]);

echo "Stored in: " . "upload/" . $_FILES["file"]["name"];

}

}

}

else

{

echo "Invalid file";

}

?>

Filename:復制代碼

三、php讀取和保存base64編碼的圖片內容

if($_POST['submit']){

$image_info = getimagesize($_FILES['file']['tmp_name']);//$_FILES['file']['tmp_name']即文件路徑

$base64_image_content = "data:{$image_info['mime']};base64," . chunk_split(base64_encode(file_get_contents($_FILES['file']['tmp_name'])));

echo $base64_image_content;die;

if (preg_match('/^(data:\s*image\/(\w+);base64,)/', $base64_image_content, $result)){

$type = $result[2];

$new_file = "./test.{$type}";

if (file_put_contents($new_file, base64_decode(str_replace($result[1], '', $base64_image_content)))){

echo '新文件保存成功:', $new_file;

}

}

}

?>

Filename:復制代碼

總結

以上是生活随笔為你收集整理的base64的php文件上传,PHP传统文件上传和Base64位文件上传的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。