Php bir klasörden başka bir klasöre birkaç dosya kopyalamak ve kaynak klasöre nasıl silinir

1 Cevap

Php bir klasörden başka bir klasöre dosya kopyalamak ve kaynak klasöre nasıl silinir?

I $incoming_file_path = /home/xmlcontainer ve $processing_file_path = home/process_file iki klasör var. I $incoming_file_path = home/xmlcontainer tüm dosyaları aracılığıyla ve $processing_file_path = home/process_file içine kopyalayarak daha loop ediyorum.

Aşağıdaki kodu yürüttükten sonra ben dosyaların içeriğini kopyalamak mümkün değilim ama dosyaların sadece adı da ben kullanarak kaynak klasörü hedef klasöre kopyalar sahip dosyaları silmek mümkün değil unlink, ben kesinlikle değilim yanlış bir şekilde bağlantısını kullanarak ve kesinlikle bunun üzerinde herhangi bir rehberlik takdir ediyorum.

Kod

foreach( glob($incoming_file_path.'/*')as $key => $value ) {
    copy($incoming_file_path.$value,$processing_file_path.$value);
    unlink($incoming_file_path.$value); 
    }

1 Cevap

Eğer dosyaları taşımak niyetinde olmadığını şeyden önce, sadece rename kullanın.

Sizin döngü bu gibi görünmelidir:

foreach (glob($incoming_file_path . '/*') as $value) {
  rename($value, $processing_file_path . '/' . basename($value))
}

Dosya içeriğini okuma ve / veya bir dosyayı silmek için yetersizlik genellikle basit bir izinleri sorundur. PHP sürecinin sahibi, okuma ve hem $incoming_file_path ve $processing_file_path yazabilirsiniz olmadığını kontrol edin. Sen chmod -R u+rwx çalıştırın (veya chmod -R o+rwx) hem $incoming_file_path ve $processing_file_path üzerine isteyebilirsiniz.