2012-01-29 2 views
0

Вот мой код, прежде всего:Переместить сохраненный файл в другой каталог в PHP

/* 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

Почему вы не указали параметр 'save()' ничего? '$ appicon-> save (''. $ artistid'. – PeeHaa

+0

Хорошая точка - удалена. –

ответ

1

Я думаю, что вы ищете:

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

удивительный, что работает. :-) –

0

Во-первых , ваша переменная $directory не будет конкатенироваться правильно, вы хотите использовать что-то по строкам:

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

Если файл PNG можно сохранить только в том пути, к которому выполняется PHP-скрипт, тогда вам нужно сначала его сохранить, а затем переместить файл. Если это так, то функция rename() в PHP обеспечит то, что вы ищете.

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

Это переместит файл PNG в каталог, (то есть, определенный в appicons/artistid/APPID папку).

Смежные вопросы