今天小編給大家分享一下PHP怎么上傳圖片并實現(xiàn)特定的命名規(guī)則的相關(guān)知識點,內(nèi)容詳細(xì),邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。
網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專注于網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、小程序開發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了西豐免費建站歡迎大家使用!
一、基本的圖片上傳
首先,我們需要創(chuàng)建一個表單來接受用戶上傳文件。表單應(yīng)該包含一個文件輸入元素,提交按鈕和一個action屬性指向處理上傳的PHP腳本。
<form action="upload.php" method="post" enctype="multipart/form-data">
<input type="file" name="fileToUpload" id="fileToUpload">
<input type="submit" value="Upload Image" name="submit">
</form>
上面的代碼告訴瀏覽器提交表單時需要將數(shù)據(jù)編碼為“multipart/form-data”。這種編碼方式可用于上傳文件。
下面是處理上傳的PHP代碼,我們將在此處實現(xiàn)重命名規(guī)則。
<?php
$target_dir = "uploads/";
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
$uploadOk = 1;
$imageFileType = strtolower(pathinfo($target_file,PATHINFO_EXTENSION));
// Check if image file is a actual image or fake image
if(isset($_POST["submit"])) {
$check = getimagesize($_FILES["fileToUpload"]["tmp_name"]);
if($check !== false) {
echo "File is an image - " . $check["mime"] . ".";
$uploadOk = 1;
} else {
echo "File is not an image.";
$uploadOk = 0;
}
}
// Check if file already exists
if (file_exists($target_file)) {
echo "Sorry, file already exists.";
$uploadOk = 0;
}
// Check file size
if ($_FILES["fileToUpload"]["size"] > 500000) {
echo "Sorry, your file is too large.";
$uploadOk = 0;
}
// Allow certain file formats
if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg"
&& $imageFileType != "gif" ) {
echo "Sorry, only JPG, JPEG, PNG & GIF files are allowed.";
$uploadOk = 0;
}
// Check if $uploadOk is set to 0 by an error
if ($uploadOk == 0) {
echo "Sorry, your file was not uploaded.";
// if everything is ok, try to upload file
} else {
if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {
echo "The file ". basename( $_FILES["fileToUpload"]["name"]). " has been uploaded.";
} else {
echo "Sorry, there was an error uploading your file.";
}
}
?>
二、特定的文件命名規(guī)則
現(xiàn)在,我們將修改PHP代碼,實現(xiàn)基于當(dāng)前日期和時間的重命名規(guī)則。
<?php
$target_dir = "uploads/";
$timestamp = date("YmdHis");
$target_file = $target_dir . $timestamp . '.' . pathinfo($_FILES["fileToUpload"]["name"], PATHINFO_EXTENSION);
$uploadOk = 1;
$imageFileType = strtolower(pathinfo($target_file,PATHINFO_EXTENSION));
...
在這個例子中,我們將當(dāng)前日期時間存儲在$timestamp變量中。我們?nèi)缓髮⑸蟼魑募孛麨?$timestamp.擴(kuò)展名 ,以確保每個上傳的文件都有唯一的名稱。
三、保持原始文件名但添加前綴的命名規(guī)則
現(xiàn)在,我們將修改PHP代碼,實現(xiàn)保持原始文件名的重命名規(guī)則,但添加一個前綴。
<?php
$target_dir = "uploads/";
$prefix = "myprefix_";
$target_file = $target_dir . $prefix . basename($_FILES["fileToUpload"]["name"]);
$uploadOk = 1;
$imageFileType = strtolower(pathinfo($target_file,PATHINFO_EXTENSION));
...
在這個例子中,我們將預(yù)定義的prefix變量添加到上傳文件的原始名稱中。這將產(chǎn)生前綴為 "myprefix_"的文件名。
以上就是“PHP怎么上傳圖片并實現(xiàn)特定的命名規(guī)則”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學(xué)習(xí)更多的知識,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
網(wǎng)站標(biāo)題:PHP怎么上傳圖片并實現(xiàn)特定的命名規(guī)則
當(dāng)前鏈接:http://chinadenli.net/article4/gepioe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供建站公司、域名注冊、小程序開發(fā)、外貿(mào)建站、網(wǎng)站改版、網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)