PHPのフォルダからファイルを削除したいのですが、このファイルへのパスがあります。リンクを解除するためのパスを指定しても大丈夫ですか?例えば
unlink('path/to/file.txt');
これが機能しない場合、これらのファイルを削除する唯一の方法は、path / to /ディレクトリに.phpファイルを作成し、それをファイルに含めることです。ファイルを削除するためのメソッドを呼び出します。
あなたの質問のための簡単な方法を手に入れました
このコードを使用して、フォルダーからファイルを削除します
$_SERVER['DOCUMENT_ROOT']
これは、リンク解除機能内で使用できます
動作したコード
unlink($_SERVER['DOCUMENT_ROOT'] . "/path/to/file.txt");
unlink
ドキュメントをご覧ください。
bool unlink ( string $filename [, resource $context ] )
と
filenameファイル
へのパス。
したがって、ファイル名として文字列のみを取ります。
スクリプトを実行する場所からのパスでファイルに到達できることを確認してください。これは絶対パスの問題ではありませんが、相対パスの場合は問題になる可能性があります。
リンク解除はパスで正常に機能します。
説明boolunlink(string $ filename [、resource $ context])
ファイル名を削除します。Unix Cのunlink()関数に似ています。失敗すると、E_WARNINGレベルのエラーが生成されます。
ファイル名
Path to the file.
アクセス許可の拒否エラーで問題が発生した場合は、作業ディレクトリの階層の上位にあるフォルダーにあるファイルを削除しようとしたとき(つまり、「../」で始まるパスを削除しようとしたとき)に発生することがあります。 。
したがって、この問題を回避するには、chdir()を使用して、作業ディレクトリを、リンクを解除するファイルが配置されているフォルダに変更します。
<?php
$old = getcwd(); // Save the current directory
chdir($path_to_file);
unlink($filename);
chdir($old); // Restore the old working directory
?>
ファイルが存在するかどうかを確認することを忘れないでください。存在しない場合はエラーが発生します。
$file_with_path = $_SERVER['DOCUMENT_ROOT'] . "/path/to/file.txt";
if (file_exists($file_with_path)) {
unlink($file_with_path);
}
パスでリンク解除を使用できます。
最初にディレクトリを空にしている限り、ディレクトリに対してリンク解除を実行することもできます。
マニュアルは次のとおりです:http://php.net/manual/en/function.unlink.php
ドキュメントによるとunlink
、パスの文字列パラメータを受け入れます。
http://php.net/manual/en/function.unlink.php
言い換えれば...あなたはあなたがファイルを削除するために必要なものを持っています。
それはOKであるだけでなく、PHPでファイルを削除する唯一の方法です(システムコールを除く)。
このコードを使用できます
$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...
}