當前位置:首頁 » 編程語言 » php圖片命名

php圖片命名

發布時間: 2022-12-06 21:40:39

A. php 上傳文件重命名

上傳文件或圖片進行重命名是我們在php上傳中會碰到的一個問題了,在重命名無非就是對你上傳的文件生成一個隨機的字元串了,包括有Md5,隨機,或按時間日期來重命名了,下面我來給大家介紹。




如我們在上傳文件頁面中如下操作:

$name=$_FILES['userfile']['name'];//將所上傳的文件名稱賦予name

然後我們要對它進行重命名

//文件名的自動生成
list($usec,$new_name)=explode("",microtime());
if(@$extension_name){//限制文件類型為jpg、gif、png、bmp
move_uploaded_file($tmp_name,$new_dir.'/'.$new_name.'.'.$extension_name);//移動到目標文件夾
echo'上傳成功';

這樣我們就把文件名以時間日期生成了一個新的文件名了,例:

<formaction="upload_file.php"method="post"
enctype="multipart/form-data">
<labelfor="file">Filename:</label>
<inputtype="file"name="file"id="file"/>
<br/>
<inputtype="submit"name="submit"value="Submit"/>
</form>

以下是我添加的將文件名重命名為系統時間的代碼:

<?php$date=date(ymdhis);
//echo($date);
if((($_FILES["uppic"]["type"]=="image/gif")
||($_FILES["uppic"]["type"]=="image/jpeg")
||($_FILES["uppic"]["type"]=="image/pjpeg"))
&&($_FILES["uppic"]["size"]<2000000))
{
if($_FILES["uppic"]["error"]>0)
{
echo"ReturnCode:".$_FILES["uppic"]["error"]."<br/>";
}
else
{
//echo"Upload:".$_FILES["uppic"]["name"]."<br/>";
//echo"Type:".$_FILES["uppic"]["type"]."<br/>";
//echo"Size:".($_FILES["uppic"]["size"]/1024)."Kb<br/>";
//echo"Tempfile:".$_FILES["uppic"]["tmp_name"]."<br/>";
$uptype=explode(".",$_FILES["uppic"]["name"]);
$newname=$date.".".$uptype[1];
//echo($newname);
$_FILES["uppic"]["name"]=$newname;
if(file_exists("pics/".$_FILES["uppic"]["name"]))
{
echo$_FILES["uppic"]["name"]."alreadyexists.";
}
else
{
$_FILES["uppic"]["name"]=
move_uploaded_file($_FILES["uppic"]["tmp_name"],
"pics/".$_FILES["uppic"]["name"]);
echo"<script>alert('上傳成功!')</script>";
echo"<script>window.location.href='

}
}
}
else
{
echo"Invalidfile";
}
?>

大家可以參考一下

B. thinkphp怎麼實現自定義命名圖片再後上傳

把新命名和圖片一起傳到後台,上傳成功後保存的savename名字改成你命名的就行了。

C. 阿里雲oss php上傳圖片問題 上傳前把圖片重命名之後再上傳到oss 怎麼寫代碼呢

他這里有一個上傳示例的

<?php

/**
*載入sdk包以及錯誤代碼包
*/
require_once'oss_php_sdk/sdk.class.php';
$oss_sdk_service=newALIOSS();
$bucket='你的bucket名字';

if((($_FILES["file"]["type"]=="image/gif")
||($_FILES["file"]["type"]=="image/jpeg")
||($_FILES["file"]["type"]=="image/pjpeg"))
&&($_FILES["file"]["size"]<2000000))
{
if($_FILES["file"]["error"]>0)
{
echo"ReturnCode:".$_FILES["file"]["error"]."<br/>";
}
else
{
echo"Upload:".$_FILES["file"]["name"]."<br/>";
echo"Type:".$_FILES["file"]["type"]."<br/>";
echo"Size:".($_FILES["file"]["size"]/1024)."KB<br/>";
echo"Tempfile:".$_FILES["file"]["tmp_name"]."<br/>";

$content='';
$length=0;
$fp=fopen($_FILES["file"]["tmp_name"],'r');
if($fp)
{
$f=fstat($fp);
$length=$f['size'];
while(!feof($fp))
{
$content.=fgets($fp,8192);
}
}
$upload_file_options=array('content'=>$content,'length'=>$length);
$upload_file_by_content=$oss_sdk_service->upload_file_by_content($bucket,$_FILES["file"]["name"],$upload_file_options);//$_FILES["file"]["name"]這個就是文件名,你可以自己定義的。
$img_url="http://storage.aliyun.com/".$bucket."/".$_FILES["file"]["name"];
echo"Uploadsuccessfully!TheOSSURLofthisfile:".$img_url."<br/>";
echo"Ifthebucketispublic-read,theuploadedimagecanbeshownas:"."<br/>";
echo"<imgsrc=$img_url/>";
}
}
else
{
echo"Invalidfile";
}

關於文件名我已經給你注釋在代碼中了,你試試看

D. thinkphp里上傳的圖片如何進行重命名,命名為自己想要的格式,它默認格式是時間戳的

TP文檔上說明有這個參數,saveRule保存規則:

不為空的時候可以選擇手冊上說的幾種命名規則,不同的場景使用不同的方式,只要加個判斷就可以了。如果同名需要覆蓋原文件的話添加屬性:$upload->uploadReplace = true;

E. 請教:關於php圖片上傳保存路徑和重新命名圖片的問題

<?php
define('UPLOAD_DIR_PATH','這里填寫你的上傳目錄');
$temp_pic=$_FILES['photo']['tmp_name'];
foreach($temp_picas$src_file)
{
$des_file=UPLOAD_DIR_PATH.'/'.date('YmdHis').'.jpg';
move_uploaded_file($src_file,$des_file);
}
?>

這樣應該就可以了!


或者參照:php.net/manual/zh/function.move-uploaded-file.php

手冊中的example#1

F. thinkphp中圖片上傳後圖片名總是 隨機生成 無法改變其命名規則 想把它改為日期名

如果你用的是tp3.2的Think\Upload,那麼先定義一個數組$arr=array('saveName'=>date("YmdHis"));然後實例化upload類時傳進去,如$upload = new \Think\Upload($arr);

G. php 如何對上傳文件的文件名進行重命名

<html>
<body>
<form id="form1" name="form1" enctype="multipart/form-data" method="post" action="test.php">
上傳圖片
<input name="tupian" type="file" id="tupian" />
<input type="submit" name="button" id="button" value="上傳" />
</form>
<?php
if (isset($_FILES['tupian'])) {
// echo '<pre>';
// print_r($_FILES["tupian"]);
// echo '</pre>';

if ($_FILES["tupian"]['error'] == UPLOAD_ERR_OK) {
$tmp_name = $_FILES["tupian"]["tmp_name"];
$name = $_FILES["tupian"]["name"];
move_uploaded_file($tmp_name, "$name");//在這里進行文件改名
}
echo '<img src="' . $name . '" />';

}
?>
</body>
</html>

熱點內容
資料庫相關論文 發布:2024-04-16 17:20:31 瀏覽:16
中山php培訓 發布:2024-04-16 16:57:29 瀏覽:951
java類實例 發布:2024-04-16 16:26:59 瀏覽:706
ipa編譯和反編譯 發布:2024-04-16 16:03:46 瀏覽:634
驗證身份證的密碼是什麼密碼 發布:2024-04-16 16:03:34 瀏覽:948
每個函數都能獨立的編譯 發布:2024-04-16 15:54:39 瀏覽:749
javacdll 發布:2024-04-16 15:24:55 瀏覽:608
編譯js代碼 發布:2024-04-16 15:16:20 瀏覽:32
gcc編譯教程 發布:2024-04-16 15:16:13 瀏覽:703
dh演算法簽名 發布:2024-04-16 14:54:32 瀏覽:810