• php文件操作


    文件操作

    <?php
    //文件:文件和文件夹(目录)
    filetype("./aa.txt"); //判断文件类型,如果是文件返回file,如果是目录返回dir。
    var_dump(is_dir("./test"));//判断给的路径是不是目录
    is_file("./aa.txt");//判断给的路径是不是文件
    
    echo date("Y-m-d H:i:s",fileatime("./aa.txt"));//获取文件的上次访问时间
    echo date("Y-m-d H:i:s",filectime("./aa.txt"));//获取文件的创建时间
    echo date("Y-m-d H:i:s",filemtime("./aa.txt"));//获取文件的修改时间
    echo filesize("./aa.txt");//获取文件大小
    var_dump(file_exists("./aa.txt"));//判断文件是否存在
    
    //文件路径
    //当前目录:./
    //上级:../
    //下级:文件夹名/
    //根目录:/
    //根目录/有两层意思:如果在PHP里:代表硬盘根目录    在网页里:代表服务器的根目录(www)目录
    
    //做文件上传(头像,产品图片),保存在数据库的路径一定要写绝对路径
    echo $_SERVER['DOCUMENT_ROOT'];//取服务器的(www)根目录
    echo basename("./aa.txt");//路径中获取文件名
    echo basename("./aa.txt",".txt");//路径中获取文件名(去掉后缀)
    echo dirname("./test/bb.txt");//路径中目录名
    var_dump(pathinfo("./test/bb.txt"));//返回文件信息(数组)
    echo realpath("./test/bb.txt");//返回规范化的绝对路径(将相对路径转为绝对路径)
    
    //目录操作
    var_dump(glob("./Users/*.php"));//返回该目录下所有.php文件数组
    
    
    function ShuLiang($filename)
    {
        if(is_dir($filename))
        {
            $attr = glob("./Users/*");
            $s1=0;
            foreach($attr as $v)
            {
                
                if(is_dir($v))
                {
                    $s1=$s1+ShuLiang($v);
                }
                else
                {
                    $s1++;
                }
            }
            return $s1;
        }
        else if(is_file($filename))
        {
            return 1;
        }
        else
        {
            return 0;
        }
    }
    //调用目录的第二种方式
    $dir = opendir("./Users/zfz");//打开目录资源
    
    echo readdir($dir);//.当前文件(返回目录的一个文件,读一次指针向下走,注意前两个)
    echo readdir($dir);//上级文件..
    echo readdir($dir);//文件
    
    while($v=readdir($dir))
    {
        if($v=="."||$v=="..")
        {
            
        }
        else
        {
            echo $v."<br />";
        }
    }
    //读出所有数据
    closedir($dir);//关闭目录资源
    rewinddir($dir);//指针返回最初
    
    //目录操作
    mkdir("./aa");//创建目录
    rmdir("./aa");//目录必须为空才可以删除
    
    rename("./test","./testt");//重命名,移动目录文件
        
    touch("./cc.txt");//创建文件
    copy("./cc.txt","../cc.txt");//复制文件
    unlink("./cc.txt");//删除文件
        
    echo file_get_contents("./aa.txt");//读取文件内容(本地)
    //echo file_get_contents("http://www.baidu.com");//读取文件内容(远程)
    
    file_put_contents("aa.txt","ih hello");//写入文件内容(覆盖)
    
    readfile("./aa.txt");//读取文件并输出
    
    var_dump(file("aa.txt"));//将文件中每行数据放到数组
    
    
    //打开文件资源
    $fp = fopen("./aa.txt","r");
    //r只读;r+读写;w写清空;w+读写;a写入文件末尾;a+读写;
    //x创建并以写入打开;x+创建并以读写打开;加一个b代表可操作二进制文件(建议加)
    
    echo fgetc($fp);//获取文件内容(一个字符一个字符读)
    
    while($v=fgetc($fp))
    {
        echo $v;
    }
    
    echo fgets($fp)."<br/>";//获取文件内容(一次读一行)
    echo fgets($fp);
    
    echo fread($fp,10);//读取文件的内容,可以读取特定长度的内容
    
    fwrite($fp,"aaa的aa");//写入内容,w方式会覆盖
        
  • 相关阅读:
    文件和数组的排序
    批量删除文档中的注释和空行
    strcat()的编写
    OpenGL鼠标旋转图像
    c++对文件操作的支持(二)
    汉字的16进制存储
    启动程序的c++方法
    HDU 2199 Can you solve this equation? 二分
    HDU 2899 Strange fuction 二分
    HDU 1233 还是畅通工程 最小生成树
  • 原文地址:https://www.cnblogs.com/zhaimiaoer/p/5528480.html
Copyright © 2020-2023  润新知