将保存的文件移动到PHP中的另一个目录

时间:2012-01-29 14:54:27

标签: php file directory move

首先是我的代码:

 /* Make directory if not existing */

$directory = "appicons/$artistid/$appid/";
if (!is_dir ($directory)) 
{
     $mode = 0777;
     mkdir($directory, $mode, true);
}

 /* Resize Icon */
 include('appicons.php');

 if(file_exists(''. $artistid . '-' . $appid . '.png')){
    end(&$appicon);
    }else{

    $appicon = new SimpleImage();
    $appicon->load($icon);
    $appicon->resizeToWidth(128);
    $appicon->save(''. $artistid . '-' . $appid . '.png');

    }

$ appicon将文件保存到我网站的根目录为$ appid- $ artistid.png。我希望将该文件移动到正确的目录(采用格式/ appicons / $ appid / $ artistid /.

我查看了move_uploaded_file,但我不确定如何实现它,或者如果这是我应该使用的正确函数。我相信我应该编辑$appicon->save(''. $artistid . '-' . $appid . '.png');,但我不确定该怎么做......

2 个答案:

答案 0 :(得分:1)

我认为你在寻找的是:

$appicon->save($directory . $artistid . '-' . $appid . '.png'); 

答案 1 :(得分:0)

首先,您的$directory变量未正确连接,您希望使用以下内容:

$directory = 'appicons/' . $artistid . '/' . $appid;

如果PNG文件只能保存到运行PHP脚本的路径,那么您需要先将其保存,然后再移动该文件。如果是这种情况,则PHP中的rename()函数将实现您所需的功能。

$filename = $artistid . '-' . $appid . '.png';
if(file_exists($filename)) {
  rename($filename, $directory . '/' . $filename);
}

这会将png文件移动到指定的目录(即appicons / artistid / appid文件夹)。

相关问题