欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

PHP递归函数实现删除文件夹及其子目录

程序员文章站 2022-03-03 23:14:50
...

PHP递归函数实现删除文件夹及其子目录

递归函数: recursion 函数自身调用自身, 但必须调用自身之前有满足特定条件,否则会无线调用下去。

  1. <?php
  2. // 封装一个递归函数,目的是删除所有缓存目录(及其子目录,文件)
  3. $dir = __DIR__ . DIRECTORY_SEPARATOR . 'runtime';
  4. // echo $dir;
  5. function delete_dir_file($dir)
  6. {
  7. $flag = false; //默认没删除成功runtime目录
  8. //判断是不是文件夹
  9. if (is_dir($dir)) {
  10. // 打开目录流 成功返回一个资源类型 目录句柄 否则false
  11. if ($handle = opendir($dir)) {
  12. while (($file = readdir($handle)) !== false) {
  13. // 在php中删除一个文件夹的前提是该文件夹为空
  14. if ($file != '.' && $file != '..') {
  15. if (is_dir($dir . DIRECTORY_SEPARATOR . $file)) {
  16. // 子内容是目录
  17. delete_dir_file($dir . DIRECTORY_SEPARATOR . $file);
  18. } else {
  19. // 子内容是文件
  20. unlink($dir . DIRECTORY_SEPARATOR . $file);
  21. }
  22. }
  23. }
  24. closedir($handle);
  25. if (rmdir($dir)) {
  26. $flag = true;
  27. }
  28. }
  29. } else {
  30. echo "没有找到文件夹...";
  31. }
  32. return $flag;
  33. }
  34. $res = delete_dir_file($dir);
  35. if ($res) {
  36. echo json_encode(['msg' => '清除成功', 'satatus' => 1], 320);
  37. }

数据库初步

常用SQL语句

SELECT USER()

得到登陆的用户

SELECT VERSION()

得到MySQL的版本信息

SELECT NOW()

得到当前的日期时间

SELECT DATABASE()

得到当前打开的数据库

操作环境:MacOs11.4(m1芯片) + Navicat Premium 15 + MAMP

PHP递归函数实现删除文件夹及其子目录
PHP递归函数实现删除文件夹及其子目录
PHP递归函数实现删除文件夹及其子目录