gpt4 book ai didi

php - 根据当前年月创建上传路径

转载 作者:行者123 更新时间:2023-12-02 07:01:56 24 4
gpt4 key购买 nike

对于上传,我想检查年文件夹和月子文件夹是否已经存在。如果他们不这样做,我想创建它们并将我的上传保存在那里。

<?php
$newname = $_POST['changename'];
$temp = explode(".", $_FILES["uploadfile"]["name"]);
$extension = end($temp);

if(!(
$_FILES['uploadfile']['type']=='image/jpeg' ||
$_FILES['uploadfile']['type']=='image/png' ||
$_FILES['uploadfile']['type']=='image/gif' ||
$_FILES['uploadfile']['type']=='image/bmp'
)) // if file does not equal these types, kill it
{
echo $_FILES['uploadfile']['type'] . " is not an acceptable format.";
die();
}

if ($_FILES["uploadfile"]["size"] > 20000000)
{
echo "File too big. Max 20mb";
die();
}

if ($_FILES["uploadfile"]["error"] > 0)
{
echo "Return Code: " . $_FILES["uploadfile"]["error"] . "<br>";
}
else
{
$new_file_name = $newname.".".$extension;
$path = "uploads/".$new_file_name;
move_uploaded_file($_FILES["uploadfile"]["tmp_name"],$path);
echo json_encode(array(
"success" => true,
"imagepath" => $path,
"filetype" => $_FILES["uploadfile"]["type"],
"new_file_name" => $newname,
"fileName" => $_FILES["uploadfile"]["name"],
"fileTmp" => $_FILES["uploadfile"]["tmp_name"],
));
}
?>

最佳答案

用这样的东西:

$year = date("Y");   
$month = date("m");
$filename = "../".$year;
$filename2 = "../".$year."/".$month;

if(file_exists($filename)){
if(file_exists($filename2)==false){
mkdir($filename2,0777);
}
}else{
mkdir($filename,0777);
}

您必须根据您拥有的目录结构调整此代码。它向您展示了检查文件或目录是否存在的基本概念,如果不存在,则会为您创建。

编辑 1:

根据需要调整代码,应该是这样(未测试):

$path = "uploads/";

$year_folder = $path . date("Y");
$month_folder = $year_folder . '/' . date("m");

!file_exists($year_folder) && mkdir($year_folder , 0777);
!file_exists($month_folder) && mkdir($month_folder, 0777);

$path = $month_folder . '/' . $new_file_name;

注意:放在正上方

move_uploaded_file($_FILES["uploadfile"]["tmp_name"],$path);

关于php - 根据当前年月创建上传路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19401800/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com