zoukankan      html  css  js  c++  java
  • 文件操作

     文件操作

     1.只能操作服务器的文件

     2.文件包含目录和文件

     判断文件类型

     var_dump(filetype("../0529"));  返回文件的类型:目录dir 文件file

     var_dump(is_dir("../11.php"));  判断路径是不是目录

     var_dump(is_file("../11.php"));  判断路径是不是文件

     文件属性

     echo date("Y-m-d H:i:s",fileatime("../11.php"));  上次访问时间

     echo date("Y-m-d H:i:s",filectime("../11.php"));  创建时间

     echo date("Y-m-d H:i:s",filemtime("../11.php"));  修改时间

     echo filesize("../11.php");  文件大小,字节为单位

     var_dump(file_exists("../12.php"));  判断文件是否存在

     文件路径

     当前路径:./  上级目录:../  下级目录:目录/  根路径:/

     如果是php里面的根(/)路径代表:磁盘的根

     如果是在网页里面的根(/)路径代表:服务器的根(www目录)

     echo $_SERVER['DOCUMENT_ROOT'];  取服务器的根路径

     echo basename("../11.php");  从路径中获取带后缀的文件名

     echo basename("../11.php",".php");  从路径中获取不带后缀的文件名

     echo dirname("../0529/aa.php");  取路径中除去文件名的目录

     var_dump(pathinfo("../0529/aa.php"));  返回目录信息,格式为数组

     echo realpath("../0529/aa.php");  将相对路径转化为绝对路径

     目录操作

     1.创建目录(文件夹)

     mkdir("./test");

     2.删除目录(文件夹)只能删除空的文件夹

     rmdir("./test");

     3.移动目录(文件夹)

     rename("./test","../test11");

     文件操作

     touch("./test.txt"); 创建文件

     copy("./test.txt","../test.txt");  复制文件

     unlink("./test.docx");  删除文件

     echo file_get_contents("./test.txt");  获取文件内容:txt 页面

     echo file_get_contents("http: www.baidu.com");  远程获取内容

     file_put_contents("./test.txt","hello");  向文件写入内容

     readfile("./test.txt");  获取文件内容并且直接输出

     var_dump(file("./test.txt"));  读取文件内容,返回数组,数组的每个元素对应的是一行

     对文件内容进行操作

     1.打开文件资源

     $fp = fopen("./test.txt","a");

     操作文件

     echo fgetc($fp);  每次读一个字符

    /*while(!feof($fp))  判断文件是否读到末尾

    {

             echo fgetc($fp);

    }*/

     echo fgets($fp);  每次读一行

     echo fgets($fp);

     echo fread($fp,10);  读取特定长度

     $str = "ni hao dhakhdak akdhka";

     $str = iconv("utf-8","gb2312",$str);

     fwrite($fp,$str);

     2.关闭文件资源

     fclose($fp);

    获取文件夹数目和文件数

    $filename=0;
     $dirnum=0;
    function Num($url)
    {    global $filename;
         global $dirnum;
         
        //判断是不是文件
        if(is_file($url))
        {
            $filename=1;
            return $filename;
            break;
        }
        //获取目录下所有子文件
        $attr=glob($url."/*");
        //遍历
        foreach ($attr as $v)
        {
            if(is_file($v))
            {
                $filename++;
                
            }
            else
            {
                $dirnum++;
                Num($v);
            }
        }
        
    }

     计算文件大小

    function Dirsize()
    { 
      //定义变量储存文件大小、
      $size=0;
      //判断给的路径是不是文件
      if(is_file($url))
      {
          return filesize($url);
      }
      //如果是目录,取目录下的所有文件
      $attr=glob($url,"/*");
      //判断路径是不是文件
      if(is_file($attr))
      {
          return filesize($url);
          exit;
      }
      //如果是目录
        $attr=glob($url,"/*");
        //遍历
        foreach ($attr as $v)
        {
            if(is_file($v))
            {
                $size=$size+filesize($v);
            }
            else
            {
                $size=$size+Dirsize($v);
            }
        }
    }
  • 相关阅读:
    事务隔离级别
    OpenSessionInView
    图像平滑处理(滤波)
    [原]Nginx+Lua服务端合并静态文件
    检查数据倾斜分布
    SQL Server研究之统计信息—发现过期统计信息并处理具体解释
    GDALWarp设置GDALWarpOptions::dfWarpMemoryLimit过大时处理失败
    Android Studio 2.0 稳定版新特性介绍
    供应商和管理员查看供应商地址簿信息SQL
    Table AdvanceTable针对表内行禁用multipleSelection , singleSelection
  • 原文地址:https://www.cnblogs.com/zoubizhici/p/5633578.html
Copyright © 2011-2022 走看看