PHP non lancia la funzione funziona con un percorso?
Domanda
Vorrei rimuovere un file da una cartella in PHP, ma ho solo il percorso di questo file, sarebbe OK dare il percorso di scollegare?Ad esempio
unlink('path/to/file.txt');
.
Se questo non funziona, l'unico modo per sbarazzarsi di tali file sarebbe quello di creare un file .php nel percorso / TO / directory e includerlo in qualche modo nel mio file una chiamata un metodo per rimuovere il file, giusto?
Soluzione
Dai un'occhiata al unlink
Documentazione:
..bool unlink ( string $filename [, resource $context ] )
e
.Nome file
Percorso per il file.Quindi solo prende una stringa come nome file.
Assicurarsi che il file sia raggiungibile con il percorso dalla posizione che esegui lo script.Questo non è un problema con i percorsi assoluti, ma potresti averne uno con relativi percorsi.
Altri suggerimenti
ha ottenuto un metodo facile per la tua domanda
Utilizzare questo codice per rimuovere un file da una cartella
.
$_SERVER['DOCUMENT_ROOT']
Questo può essere utilizzato all'interno della funzione lowswork
Codice lavorato
. unlink($_SERVER['DOCUMENT_ROOT'] . "/path/to/file.txt");
Lo scoreggia funziona bene con i percorsi.
.DESCRIZIONE BOOL SHORT LINKE (String $ Nome file [, Resource $ context])
Deletes Nomefename.Simile all'unix C lo speking () funzione.Un livello E_Warning. L'errore verrà generato in errore.
Nome file
.Path to the file.
Nel caso in cui avesse un problema con le autorizzazioni negato l'errore, è talvolta causato quando si tenta di eliminare un file in una cartella più alta nella gerarchia alla directory di lavoro (cioè quando si tenta di eliminare un percorso che inizia con "../")..
Pertanto per aggirare questo problema, è possibile utilizzare CHDIR () per modificare la directory di lavoro nella cartella in cui si trova il file che si desidera scollegare.
.<?php $old = getcwd(); // Save the current directory chdir($path_to_file); unlink($filename); chdir($old); // Restore the old working directory ?>
È possibile utilizzare scollegare con un percorso.
Puoi anche esibirti scollegare su una directory, purché ti sia stato svuotato prima.
Ecco il manuale: http://php.net/manual/en/function.unlink.php
Non dimenticare di verificare se il file esiste, o riceverai un errore se non è:
$file_with_path = $_SERVER['DOCUMENT_ROOT'] . "/path/to/file.txt";
if (file_exists($file_with_path)) {
unlink($file_with_path);
}
. Secondo la documentazione, unlink
accetta il parametro stringa per il percorso.
Non solo va bene, è l'unico modo per eliminare un file in PHP (oltre alle chiamate di sistema).
Possiamo usare questo codice
$path="images/all11.css";
if(unlink($path)) echo "Deleted file ";
. if (isset($_POST['remove_file'])) {
$file_path=$_POST['fileremove'];
// chown($file_path, 'asif');
// echo $file_path;
if (file_exists($file_path)) {
unlink($file_path);
echo "file deleted<br> the name of file is".$file_path."";
# code...
}
else
echo "file is not deleted ".$file_path."";
# code...
}
.