ホームページ > バックエンド開発 > PHPの問題 > PHPでリンク解除を使用してフォルダーを削除する方法

PHPでリンク解除を使用してフォルダーを削除する方法

王林
リリース: 2023-03-13 06:30:01
オリジナル
2319 人が閲覧しました

PHP で unlink を使用してフォルダーを削除する方法: 1. PHP サンプル ファイルを作成します; 2. "if ($handle = opendir( "$dirName" ) ) {while (false !== ( $ item = readdir($handle))){if($item...}" ステートメントを使用してフォルダーを削除できます。

PHPでリンク解除を使用してフォルダーを削除する方法

動作環境この記事の対象: Windows10 システム、php 7、thinkpad t480 コンピューター

PHP では、unlink 関数と rmdir 関数という適切な関数が用意されているため、PHP でのファイルの削除は実際には非常に簡単です。この関数は、再帰的な削除操作を完了することもできます。

具体的な実装コードを見てみましょう!

実装コードは次のとおりです:

class shanchu { 
//循环目录下的所有文件 
function delFileUnderDir( $dirName=”../Smarty/templates/templates_c” ) 
{ 
if ( $handle = opendir( “$dirName” ) ) { 
while ( false !== ( $item = readdir( $handle ) ) ) { 
if ( $item != “.” && $item != “..” ) { 
if ( is_dir( “$dirName/$item” ) ) { 
delFileUnderDir( “$dirName/$item” ); 
} else {//开源代码phpfensi.com 
if( unlink( “$dirName/$item” ) )echo “成功删除文件: $dirName/$item<br />n”; 
} 
} 
} 
closedir( $handle ); 
} 
} 
}
ログイン後にコピー

名前には次の必要があると仮定します。削除する場合は、「upload」ディレクトリ内のすべてのファイルを呼び出しますが、ディレクトリ フォルダーを削除する必要はありません。次のコードで実行できます:

<?php delFileUnderDir( ‘upload&#39;);?>
ログイン後にコピー

php はすべてのディレクトリを削除します。コードは次のとおりです。 :

function deltree($pathdir) 
{ 
echo $pathdir;//调试时用的 
if(is_empty_dir($pathdir))//如果是空的 
{ 
rmdir($pathdir);//直接删除 
} 
else 
{//否则读这个目录,除了.和..外 
$d=dir($pathdir); 
while($a=$d->read()) 
{ 
if(is_file($pathdir.&#39;/&#39;.$a) && ($a!=&#39;.&#39;) && ($a!=&#39;..&#39;)){unlink($pathdir.&#39;/&#39;.$a);} 
//如果是文件就直接删除 
if(is_dir($pathdir.&#39;/&#39;.$a) && ($a!=&#39;.&#39;) && ($a!=&#39;..&#39;)) 
{//如果是目录 
if(!is_empty_dir($pathdir.&#39;/&#39;.$a))//是否为空 
{//如果不是,调用自身,不过是原来的路径+他下级的目录名 
deltree($pathdir.&#39;/&#39;.$a); 
} 
if(is_empty_dir($pathdir.&#39;/&#39;.$a)) 
{//如果是空就直接删除 
rmdir($pathdir.&#39;/&#39;.$a); 
} 
} 
} 
$d->close(); 
echo "必须先删除目录下的所有文件";//我调试时用的 
} 
} 
function is_empty_dir($pathdir) 
{ 
//判断目录是否为空 
$d=opendir($pathdir); 
$i=0; 
while($a=readdir($d)) 
{ 
$i++; 
} 
closedir($d); 
if($i>2){return false;} 
else return true; 
}
ログイン後にコピー

PHP はディレクトリとディレクトリ内のすべてのファイルを削除します。コードは次のとおりです:

<?php 
//循环删除目录和文件函数 
function delDirAndFile( $dirName ) 
{ 
if ( $handle = opendir( “$dirName” ) ) { 
while ( false !== ( $item = readdir( $handle ) ) ) { 
if ( $item != “.” && $item != “..” ) { 
if ( is_dir( “$dirName/$item” ) ) { 
delDirAndFile( “$dirName/$item” ); 
} else { 
if( unlink( “$dirName/$item” ) )echo “成功删除文件: $dirName/$item<br />n”; 
} 
} 
} 
closedir( $handle ); 
if( rmdir( $dirName ) )echo “成功删除目录: $dirName<br />n”; 
} 
} 
//假设需要删除一个名叫”upload”的同级目录即此目录下的所有文件,你可以通过以下代码完成: 
delDirAndFile( ‘upload&#39;); 
?>
ログイン後にコピー

推奨学習: php トレーニング

以上がPHPでリンク解除を使用してフォルダーを削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート