• php 文件操作


    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无标题文档</title>
    </head>
    
    <body>
    <?php
    //文件操作
    //1.只能操作服务器的文件
    //2.文件包含目录和文件
    
    //判断文件类型
    //var_dump(filetype("./img")); //返回文件的类型:目录dir 文件file
    //var_dump(is_dir("./img")); //判断路径是不是目录  正确返回true 错误返回false  
    //var_dump(is_file("./add.php")); //判断路径是不是文件  正确返回true 错误返回false  
    
    //文件属性
    //echo date("Y-m-d H:i:s",fileatime("./add.php")); //上次访问时间
    //echo date("Y-m-d H:i:s",filectime("./add.php")); //创建时间
    //echo date("Y-m-d H:i:s",filemtime("./add.php")); //修改时间
    //echo filesize("./add.php"); //文件大小,字节为单位
    //var_dump(file_exists("./add.php")); //判断文件是否存在
    
    //文件路径
    //当前路径:./  上级目录:../  下级目录:目录/  根路径:/
    //如果是php里面的根(/)路径代表:磁盘的根
    //如果是在网页里面的根(/)路径代表:服务器的根(www目录)
    //echo $_SERVER['DOCUMENT_ROOT']; //取服务器的根路径
    //echo basename("./add.php"); //从路径中获取带后缀的文件名
    //echo basename("./add.php",".php"); //从路径中获取不带后缀的文件名
    //echo dirname("./img/aa.php"); //取路径中除去文件名的目录
    //var_dump(pathinfo("./img/aa.php")); //返回目录信息,格式为数组
    //echo realpath("./img/aa.php"); //将相对路径转化为绝对路径
    
    //操作目录
    //var_dump(glob("./img/*")); //获取目录下所有的文件*  某个后缀的*.php
    
    /*$attr = glob("./img/*");
    for($i=0;$i<count($attr);$i++)
    {
        echo $attr[$i]."<br>";
    }*/
    
    //使用全局变量计算文件和文件夹的数量
    
    /*//定义两个变量
    $filenum=0;
    $dirnum=0;
        
    num("./img");
    
    echo "文件的数量为:".$filenum."<br>";
    echo "文件夹的数量为:".$dirnum;
    
    function num($url)
    {
        global $filenum;    //使用全局变量
        global $dirnum;        //使用全局变量
        
        //判断给的路径是不是文件    
        if(is_file($url))
        {
            $filenum=1;
            return $filenum;
            exit;    
        }
        
        //获取目录下所有的子文件
        $attr=glob($url."/*");
        
        //遍历所有子文件
        foreach($attr as $v)
        {
            if(is_file($v))
            {
                $filenum++;    
            }
            else
            {
                $dirnum++;
                num($v);    
            }    
        }
    }*/
    
    //只计算文件的数量
    
    /*echo num("./img");
    
    function num($url)
    {
        $filenum=0;
        
        //判断给的路径是不是文件    
        if(is_file($url))
        {
            $filenum=1;
            return $filenum;
            exit;    
        }
        
        //获取目录下所有的子文件
        $attr=glob($url."/*");
        
        //遍历所有子文件
        foreach($attr as $v)
        {
            if(is_file($v))
            {
                $filenum++;    
            }
            else
            {
                $filenum=$filenum+num($v);    
            }    
        }
        
        return $filenum;
    }*/
    
    //计算文件夹大小
    
    /*echo dirsize("./img");
    function dirsize($url)
    {
        //定义变量存储文件大小
        $size = 0;
        
        //判断给的路径是不是文件
        if(is_file($url))
        {
            return filesize($url);
            exit;
        }
        
        //如果是目录,取目录下的所有文件
        $attr = glob($url."/*");
        
        //遍历子文件
        foreach($attr as $v)
        {
            if(is_file($v))
            {
                $size = $size + filesize($v);
            }
            else
            {
                $size = $size + dirsize($v);
            }
        }
        
        return $size;
    }*/
    
    //使用目录资源遍历
    $dir = opendir("./img"); //打开目录资源
    
    //echo readdir($dir); //读取目录下的文件,执行一次读一个
    
    while($wj = readdir($dir))
    {
        echo $wj."<br>";
    }
    
    closedir($dir); //关闭目录资源
    
    //rewindder($dir);//将指针重置
    
    //使用readdir()读取的第一个和第二个内容
    //第一个是. 代表当前目录
    //第二个是.. 代表上级目录
    //在使用目录资源遍历文件夹的时候要注意将前两个排除
    
    
    ?>
    </body>
    </html>
    View Code
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无标题文档</title>
    </head>
    
    <body>
    <?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);
    
    //world文档  excel文档  从网上找
    
    //作业:文件管理器
    //随便找个目录(管理该目录下的文件)
    //显示该目录下所有文件
    //文件的最上面有返回上级按钮可以返回上级文件夹
    
    
    
    
    
    ?>
    </body>
    </html>
    View Code

    重点

    //var_dump(filetype("../0529")); //返回文件的类型:目录dir 文件file
    //var_dump(is_dir("../11.php")); //判断路径是不是目录
    //var_dump(is_file("../11.php")); //判断路径是不是文件
    
    //echo filesize("../11.php"); //文件大小,字节为单位
    //var_dump(file_exists("../12.php")); //判断文件是否存在
    
    //当前路径:./  上级目录:../  下级目录:目录/  根路径:/
    //如果是php里面的根(/)路径代表:磁盘的根
    //如果是在网页里面的根(/)路径代表:服务器的根(www目录)
    
    //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 页面
    
    文件资源
    View Code
  • 相关阅读:
    Educational Codeforces Round 58 A,B,C,D,E,G
    Codeforces Round #530 (Div. 2) F (树形dp+线段树)
    Codeforces Round #530 (Div. 2) A,B,C,D
    bzoj 3262: 陌上花开
    bzoj 2653: middle (主席树+二分)
    费马小定理的证明
    分组背包
    二维费用的背包问题
    luoguP1164 小A点菜(背包问题)
    完全背包问题
  • 原文地址:https://www.cnblogs.com/bilibiliganbei/p/5635838.html
Copyright © 2020-2023  润新知