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

递增函数删除某个文件夹示例写法解读,数据库用命令的增删改查

程序员文章站 2022-04-17 18:52:16
...

递归函数的删除目录清空文件及文件夹操作
操作文件常用的命令有
opendir(文件路径) 打开一个文件流
readdir(文件路径) 读取一个文件流
closdir(文件路径) 关闭打开的一个文件流
rmdir(文件)删除一个文件(前提是文件内容为空)
unlink(文件路径)删除文件路径里面的内容
isdir(文件路径)判断文件是否存在
_DIR
目录索引标签
DIRECTORY_SEPARATOR 路径中的/\魔术标签

  1. <?php
  2. /**
  3. * 递归函数:recursion 函数自身调佣自身,但必须调用自身之前有满足特定条件,否则会无限执行调用下去
  4. *
  5. * 封装一个递归函数的目的是删除所有的缓存目录及其子目录和文件
  6. */
  7. //首先要获得要删除的文件路径,php中封装了一个魔术标签 _DIR_ 以及反斜杠的标签 DIRECTORY_SEPARATOR
  8. // __DIR__ 索引目录
  9. // DIRECTORY_SEPARATOR / \ 反斜杠
  10. // runtime 要删除的目录名
  11. // is_dir is_dir(目录)判断是否是一个目录句柄,如果是返回ture 否则 返回false
  12. $dir = __DIR__ . DIRECTORY_SEPARATOR . 'runtime';
  13. echo $dir;
  14. function delete_dir($dir)
  15. {
  16. if (is_dir($dir)) {
  17. // 用is_dir(目录)判断是否是一个目录句柄,如果是返回ture 否则 返回false
  18. if ($odir = opendir($dir)) {
  19. // 用opendir(目录)来打开个这个文件夹句柄,可用来一个的读写及关闭文件操作
  20. //打开一个目录句柄,可用于之后的 closedir(),readdir() 和 rewinddir() 调用中。
  21. while (($file = readdir($odir)) !== false) {
  22. //这里要注意,$file = readdir($odir)是一个整体,循环的整体不完全等于false,如果没加括号,返回的将是11111
  23. //返回目录中下一个文件的文件名。文件名以在文件系统中的排序返回。
  24. // 用while遍历循环拿到$odir里面的文件夹及内容,如果打开的能容不绝对等于false 则执行下面操作
  25. if ($file != '.' && $file != '..') {
  26. // $file != '.' && $file != '..'扎眼一看没明白,后来想了想是当目录不等于.或者目录不等于..时,
  27. // 就是如果$file不等于.和不等于..时,继续后面的操作
  28. if (is_dir($dir . DIRECTORY_SEPARATOR . $file)) {
  29. // 重新组装当前子目录的路径,进入子文件夹的文件夹,继续操作,子文件夹
  30. delete_dir($dir . DIRECTORY_SEPARATOR . $file); //这个地方的$file已经不是runtime下面的二级文件了,是无限循环的下级文件
  31. } else {
  32. // 组装出当前子目录的url 也是无限遍历的文件夹 用unlink进行删除文件夹内的文件
  33. unlink($dir . DIRECTORY_SEPARATOR . $file);
  34. }
  35. // echo "$file";
  36. }
  37. }
  38. closedir($odir); //循环完成后关闭打开的文件夹
  39. //上面是删除文件的子内容,当内容清空完毕后
  40. // 下面删除文件夹
  41. // 最后删除文件夹
  42. if (rmdir($dir)) {
  43. // 当rmdir($dir)为真,就等于已经删除了文件
  44. $rmdir = true; //返回一个真
  45. }
  46. }
  47. return $rmdir; //返回的真接收return回去
  48. } else {
  49. echo "{$dir}不是一个目录";
  50. }
  51. }
  52. $res = delete_dir($dir);
  53. if ($res === true) {
  54. echo '清除成功';
  55. echo json_encode(['msg' => '请求成功', 'sataus' => 1], 320);
  56. } else {
  57. echo '清除失败';
  58. }
  59. // echo '<hr>';
  60. // echo delete_dir($dir);

示例截图:
第一次请求删除
递增函数删除某个文件夹示例写法解读,数据库用命令的增删改查
第二次请求删除
递增函数删除某个文件夹示例写法解读,数据库用命令的增删改查

第一次使用msyql语法 快捷命令增删改查
第一次使用时,要注意,老师给的导图里面是大写,我们这里需要用小写,写完必须带分隔符,不的话也不行
查询数据所有的数据库用户
show database; 查询当前数据库所有的数据库
选择一个数据库
use 数据库名;
查看数据库表
show tables;
查询表user里面的数据
SELECT * FROM user;
在表user里面增加一行数据
INSERT INTO 表名 SET user=’老刘’ , password=’6666’ , time=’2022-01-21 17:02:59’;
其中自增字段id不需要插入值,因为是自增字段,
递增函数删除某个文件夹示例写法解读,数据库用命令的增删改查
对数据库字段进行修改,多个值用,隔开
UPDATE user SET user=’老刘’;
删除id字段为2的数据
递增函数删除某个文件夹示例写法解读,数据库用命令的增删改查