欢迎光临散文网 会员登陆 & 注册

PHP获取目标路径的文件目录

2023-08-24 14:07 作者:左音king  | 我要投稿

PHP获取目标路径(图片目录)的文件目录的原生代码,

写出来后发现还有很大的优化空间,但由于是练手的作品没再深入修改,

但这几天都有同学问我这个问题,所以决定开通博客,并在此献丑,

若有更优方法,也请各位不吝斧正!

闲话少说,代码如下:

';

        $str.=$this-> Dloop($val,$newpath,$spaces,$spaces);

                  

      }

      else{

        //$str .= '这里写入树';

        if(stripos($key,'.jpg')||stripos($key,'.jpeg')){

          $fn=''.$key;

        }

        elseif(stripos($key,'.gif')){

          $fn=''.$key;

        }

        elseif(stripos($key,'.png')){

          $fn=''.$key;

        }

        else{

          $fn=''.$key;

        }

        $kb=round(filesize($path.$key)/1024)."k";

        $str.='

';

      }

    }

  return$str; 

  }

}

?>

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

classfiles{

  protectedfunctionrefiles($path){

    if(file_exists($path)){

      $ref= scandir($path,1);

      foreach($refas$val){

        if($val=='.'||$val=='..'){

          continue;

        }

        $arr[$val] =is_dir($path.$val)?'folder':'img';

      }

    }

    else{

      $arr= false;

    }

    return$arr;

  }

  protectedfunctionreall($arr,$path){

    foreach($arras$key=>$val){

      if($val=='folder'){

        $newpath=$path.$key."/";

        $temps=$this->refiles($newpath);

        if($temps){

          $newtemp=$this->reall($temps,$newpath);

          $arr[$key] =$newtemp;

        }

        else{

          $arr[$key] ='null';

        }

      }

    }

    return$arr;

  }

  /**

  * 函数名称:allfiles()

  * 函数作用:取得指定路径下的所有目录

  * 参数说明:$path:指定的路径

  * 返 回 值:$result 目录数组 or false

  */

  publicfunctionallfiles($path){

    $allfiles=$this-> refiles($path);

    if($allfiles){

      $newallfiles=$this-> reall($allfiles,$path);

      $allfiles=$newallfiles;

    }

    return$allfiles;

  }

  /**

  * 函数名称:Dloop()

  * 函数作用:双层循环取得结构树

  * 参数说明:$path:指定的路径

  * 返 回 值:$result 目录数组 or false

  */

  publicfunctionDloop($arr,$path,$space=0,$spaces=0){

    foreach($arras$key=>$val){

      if(is_array($val)){

        $spaces+= 15;

        $newpath=$path.$key."/";

        $str.='

'.$key.' '.$kb.'  

'.$fn.' '.$kb.'


本文来源:https://www.fushouyu.com/shouyou/195.html

PHP获取目标路径的文件目录的评论 (共 条)

分享到微博请遵守国家法律