Heim Backend-Entwicklung PHP-Tutorial 利用rmdir()函数实现PHP递归删除目录_PHP教程

利用rmdir()函数实现PHP递归删除目录_PHP教程

Jul 15, 2016 pm 01:28 PM
php rmdir 函数 删除 利用 实现 Klein offen uns Ja 源码 von 目录 知道 递归

我们大家都知道PHP 是一个小开放源码的一门技术,随着越来越多的人意识到它的实用性从而逐渐发展起来。Rasmus Lerdorf 在 1994 年发布了 PHP 的第一个版本。从那时起它就飞速发展,并在原始发行版上经过无数的改进和完善现在已经发展到版本 4.0.3 。

PHP 是一种嵌入在 HTML 并由服务器解释的脚本语言。它可以用于管理动态内容、支持数据库、处理会话跟踪,甚至构建整个电子商务站点。它支持许多流行的数据库,包括 MySQL、PostgreSQL、Oracle、Sybase、Informix 和 Microsoft SQL Server。动态内容为什 么这么热门?假设您正在管理有 10 个产品的电子商务站点。只要产品不是经常变动或者预料到它不会有太大的变动,那么手工编写 10 个带有必要的信息、表单和诸如此类内容的静态产品页面是不困难的。但是,假设您在本月再要添加 10 个或更多产品,然后在下个月要更多,而且价格有时会变动或者想改变站点的观感。那么您就会陷入用手工重新编写数十个,也许上百个静态页面的困境中。

另一方面,假设您从创建 product.php 页面开始。它没有静态信息,而是编码成可以从产品数据库中提取信息并动态地构建一个页面。然后您就拥有了一个元数据页面,它可以根据存储在数据库中的信息 提供一个、一百个、甚至十万个单独页面。现在网站管理员不再整天都简单重复更新静态页面的工作,因为在更新公司数据库中的信息同时就可以更新页面上的信 息。这样就消除了令人头疼的时间延迟(在数据库中更改信息和在网站上显示信息之间的时间间隔)。下面我们来看一个php递归删除目录的例子,希望对大家有帮助。

rmdir()函数就可以搞定,但是要删除一个非空目录,将不能进行快速的删除,必须先将目录中文件删除,但是目录里可能还会有子目录所以要进行PHP递归删除目录:

PHP递归删除目录代码:

<ol class="dp-xml">
<li class="alt"><span><span class="tag"><span>?php  </span></span><li class=""><span>functiondeletedir($dir){  </span></li>
<li class="alt">
<span>if(!</span><span class="attribute">handle</span><span>=@opendir($dir)){//检测要打开目录是否存在  </span>
</li></span></li>
<li class=""><span>die("没有该目录");  </span></li>
<li class="alt"><span>}  </span></li>
<li class="">
<span>while(false!==($</span><span class="attribute">file</span><span>=</span><span class="attribute-value">readdir</span><span>($handle))){  </span>
</li>
<li class="alt"><span>if($file!=="."&&$file!==".."){//排除当前目录与父级目录  </span></li>
<li class="">
<span>$</span><span class="attribute">file</span><span>=$dir.DIRECTORY_SEPARATOR.$file;  </span>
</li>
<li class="alt"><span>if(is_dir($file)){  </span></li>
<li class=""><span>deletedir($file);  </span></li>
<li class="alt"><span>}else{  </span></li>
<li class=""><span>if(@unlink($file)){  </span></li>
<li class="alt">
<span>echo"文件</span><span class="tag"><span class="tag-name">b</span><span class="tag">></span><span>$file</span><span class="tag"></span><span class="tag-name">b</span><span class="tag">></span><span>删除成功。</span><span class="tag"><span class="tag-name">br</span><span class="tag">></span><span>";  </span></span><li class=""><span>}else{  </span></li>
<li class="alt">
<span>echo"文件</span><span class="tag"><span class="tag-name">b</span><span class="tag">></span><span>$file</span><span class="tag"></span><span class="tag-name">b</span><span class="tag">></span><span>删除失败!</span><span class="tag"><span class="tag-name">br</span><span class="tag">></span><span>";  </span></span><li class=""><span>}  </span></li>
<li class="alt"><span>}  </span></li>
<li class=""><span>}  </span></li>
<li class="alt"><span>if(@rmdir($dir)){  </span></li>
<li class="">
<span>echo"目录</span><span class="tag"><span class="tag-name">b</span><span class="tag">></span><span>$dir</span><span class="tag"></span><span class="tag-name">b</span><span class="tag">></span><span>删除成功了。</span><span class="tag"><span class="tag-name">br</span><span class="tag">></span><span>n";  </span></span><li class="alt"><span>}else{  </span></li>
<li class="">
<span>echo"目录</span><span class="tag"><span class="tag-name">b</span><span class="tag">></span><span>$dir</span><span class="tag"></span><span class="tag-name">b</span><span class="tag">></span><span>删除失败!</span><span class="tag"><span class="tag-name">br</span><span class="tag">></span><span>n";  </span></span><li class="alt"><span>}  </span></li>
<li class=""><span>}  </span></li>
<li class="alt"><span> </span></li>
<li class=""><span>//测试程序  </span></li>
<li class="alt">
<span>$</span><span class="attribute">dir</span><span>=</span><span class="attribute-value">"/var/www/test"</span><span>;  </span>
</li></span>
</li>
<li class=""><span>deletedir($dir);  </span></li>
<li class="alt">
<span>?</span><span class="tag">></span><span> </span>
</li></span>
</li>
<li class=""><span> </span></li>
<li class="alt"><span>在/var/www/test文件夹下建一写文件夹和文件测试  </span></li>
<li class="">
<span>shell</span><span class="tag">></span><span>touchaaa  </span>
</li></span>
</li>
<li class="alt">
<span>shell</span><span class="tag">></span><span>touchbbb  </span>
</li></span>
</li>
<li class="">
<span>shell</span><span class="tag">></span><span>touchccc  </span>
</li>
<li class="alt">
<span>shell</span><span class="tag">></span><span>toucheee  </span>
</li>
<li class="">
<span>shell</span><span class="tag">></span><span>touchffff  </span>
</li>
<li class="alt">
<span>shell</span><span class="tag">></span><span>mkdir111  </span>
</li>
<li class="">
<span>shell</span><span class="tag">></span><span>mkdir222  </span>
</li>
<li class="alt">
<span>shell</span><span class="tag">></span><span>mkdir333  </span>
</li>
<li class=""><span>分别再在111,222,333文件夹下建写文件这里就不多说了,然后给他们权限  </span></li>
<li class="alt">
<span>shell</span><span class="tag">></span><span>chown[url]www.www[/url]test-R </span>
</li>
</ol>
Nach dem Login kopieren

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/446454.htmlTechArticle我们大家都知道PHP 是一个小开放源码的一门技术,随着越来越多的人意识到它的实用性从而逐渐发展起来。Rasmus Lerdorf 在 1994 年发布了 P...
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

CakePHP Datum und Uhrzeit CakePHP Datum und Uhrzeit Sep 10, 2024 pm 05:27 PM

Um in cakephp4 mit Datum und Uhrzeit zu arbeiten, verwenden wir die verfügbare FrozenTime-Klasse.

Besprechen Sie CakePHP Besprechen Sie CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP ist ein Open-Source-Framework für PHP. Es soll die Entwicklung, Bereitstellung und Wartung von Anwendungen erheblich vereinfachen. CakePHP basiert auf einer MVC-ähnlichen Architektur, die sowohl leistungsstark als auch leicht zu verstehen ist. Modelle, Ansichten und Controller gu

CakePHP-Datei hochladen CakePHP-Datei hochladen Sep 10, 2024 pm 05:27 PM

Um am Datei-Upload zu arbeiten, verwenden wir den Formular-Helfer. Hier ist ein Beispiel für den Datei-Upload.

CakePHP erstellt Validatoren CakePHP erstellt Validatoren Sep 10, 2024 pm 05:26 PM

Der Validator kann durch Hinzufügen der folgenden zwei Zeilen im Controller erstellt werden.

CakePHP-Protokollierung CakePHP-Protokollierung Sep 10, 2024 pm 05:26 PM

Die Anmeldung bei CakePHP ist eine sehr einfache Aufgabe. Sie müssen nur eine Funktion verwenden. Sie können Fehler, Ausnahmen, Benutzeraktivitäten und von Benutzern durchgeführte Aktionen für jeden Hintergrundprozess wie Cronjob protokollieren. Das Protokollieren von Daten in CakePHP ist einfach. Die Funktion log() wird bereitgestellt

So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein Dec 20, 2024 am 11:31 AM

Visual Studio Code, auch bekannt als VS Code, ist ein kostenloser Quellcode-Editor – oder eine integrierte Entwicklungsumgebung (IDE) –, die für alle gängigen Betriebssysteme verfügbar ist. Mit einer großen Sammlung von Erweiterungen für viele Programmiersprachen kann VS Code c

CakePHP-Kurzanleitung CakePHP-Kurzanleitung Sep 10, 2024 pm 05:27 PM

CakePHP ist ein Open-Source-MVC-Framework. Es erleichtert die Entwicklung, Bereitstellung und Wartung von Anwendungen erheblich. CakePHP verfügt über eine Reihe von Bibliotheken, um die Überlastung der häufigsten Aufgaben zu reduzieren.

See all articles