首先是我的代码:
/* 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');
,但我不确定该怎么办…
我想你要找的是:
$appicon->save($directory . $artistid . '-' . $appid . '.png');
首先,您的$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文件夹)。