PHP的文件操作

WBOY
WBOYasal
2016-07-25 08:42:58727semak imbas
  1. //filetype()
  2. 获取文件的类型
  3. //获取windows下的文件类型
  4. echo filetype("D:\\lamp\\php5\\php.ini")."
    ";
  5. //输出file 表示是一个普通文件
  6. echo filetype("D:\\lamp\\php5")."
    ";
  7. //输出dir 表示是一个目录
  8. //is_file()
  9. 判断给定的文件名是否是一个普通文件
  10. //is_dir()
  11. 判断给定的文件名是否是一个目录
  12. //file_exists()
  13. 检查文件或目录是否存在
  14. //filesize()
  15. 取得文件的大小
  16. //is_readable()
  17. 判断给定文件名是否可读
  18. //is_writable()
  19. 判断给定的文件名是否可写
  20. //is_executable()
  21. 判断给定的文件名是否可执行
  22. //filectime()
  23. 获取文件的创建时间
  24. //filemtime()
  25. 获取文件的修改时间
  26. //fileatime()
  27. 获取文件的访问时间
  28. //stat()
  29. 获取文件的大部分属性值
  30. //clearstatcache()
  31. 清楚被PHP缓存的该文件信息
  32. /*
  33. *声明一个函数,通过传入一个文件名获取文件的大部分属性
  34. **/
  35. function getFilePro($fileName){
  36. if(!file_exists($fileName)){
  37. //如果提供的文件或目录不存在,则直接退出函数
  38. echo "目标文件不存在"."
    ";
  39. return;
  40. }
  41. if(is_file($fileName)){
  42. //判断给定的文件是否是一个普通文件
  43. echo $fileName."是一个普通文件
    ";
  44. }
  45. if(is_dir($fileName)){
  46. //判断给定的文件是否是一个目录
  47. echo $fileName."是一个目录
    ";
  48. }
  49. echo "文件类型:".getFileType($fileName)."
    ";
  50. echo "文件大小:".getFileSize(filesize($fileName))."
    ";
  51. if(is_readable($fileName)){
  52. //判断文件是否可读
  53. echo "文件可读
    ";
  54. }
  55. if(is_writable($fileName)){
  56. //判断文件是否可写
  57. echo "文件可写
    ";
  58. }
  59. if(is_executable($fileName)){
  60. //判断文件是否可执行
  61. echo "文件可执行";
  62. }
  63. echo "文件的创建时间是:".date("Y-m-d H:i:s", filectime($fileName))."
    ";
  64. echo "文件的最后更新时间是:".date("Y-m-d H:i:s", filemtime($fileName))."
    ";
  65. echo "文件的最后打开时间是:".date("Y-m-d H:i:s", fileatime($fileName))."
    ";
  66. }
  67. /*
  68. *声明一个函数,通过传入一个文件名获取文件的类型
  69. */
  70. function getFileType($fileName){
  71. switch(filetype($fileName)){
  72. case "file":
  73. $type = "普通文件";
  74. break;
  75. case "dir":
  76. $type = "目录文件";
  77. break;
  78. case "blokc":
  79. $type = "块设备文件";
  80. break;
  81. case "char":
  82. $type = "字符设备文件";
  83. break;
  84. case "fifo":
  85. $type = "命名管道文件";
  86. break;
  87. case "link":
  88. $type = "符号链接";
  89. break;
  90. case "unkonwn":
  91. $type = "未知类型";
  92. break;
  93. default:
  94. $type = "没有检测到类型";
  95. }
  96. return $type;
  97. }
  98. /*
  99. *声明一个函数,转换文件的大小
  100. */
  101. function getFileSize($bytes){
  102. if($bytes >= pow(2,40)){
  103. //如果提供的字节数大于等于2的40次方,则条件成立
  104. $return = round($bytes/pow(1024,4),2);
  105. //将字节转换为同等的T的大小
  106. $suffix = "TB";
  107. }elseif($bytes >= pow(2,30)){
  108. $return = round($bytes/pow(1024,3),2);
  109. //将字节转换为同等的G的大小
  110. $suffix = "GB";
  111. }elseif($bytes >= pow(2,20)){
  112. $return = round($bytes/pow(1024,2),2);
  113. //将字节转换为同等的M的大小
  114. $suffix = "MB";
  115. }elseif($bytes >= pow(2,10)){
  116. $return = round($bytes/pow(1024,1),2);
  117. //将字节转换为同等的K的大小
  118. $suffix = "KB";
  119. }else{
  120. $return = $bytes;
  121. //将字节转换为同等的B的大小
  122. $suffix = "B";
  123. }
  124. return $return." ".$suffix;
  125. }
  126. getFilePro("D:\\lamp\\php5\\php.ini");
  127. $filepro=stat("D:/lamp/php5/php.ini");
  128. //返回文件的大部分属性
  129. print_r($filepro);
  130. ?>
复制代码

PHP


Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:一个很好的PHP验证类 Artikel seterusnya:PHP 文件的基本操作