zoukankan      html  css  js  c++  java
  • pho文件和目录操作

     一、php文件操作

    1、readfile - 适用于打开一个文件并读取文件的内容

    echo readfile('e:/webdictionary.txt');

    2、fopen('文件名','打开模式')  - 打开文件

    打开模式:

    r - 只读

    w - 只写,如果文件不存在会自动创建(这是跟 r 不同的地方),文件指针指向开头,即如果文件存在会覆盖原文件。

    a - 只写,如果文件不存在会自动创建,如果文件存在,文件指针指向文件末尾,即新写入的内容会添加到文件的末尾

    x - 只写,如果文件不存在会自动创建,如果文件存在,会报错,文件指针指向文件开头

    b - 打开一个二进制文件

    t - windows的文本转换标记,可以透明的将 转成 .

    注:b 和 t 要依赖于前面的 4 种情况来使用

    3、fclose('已经打开了的文件') - 关闭文件

    4、fwrite('接收方','给予方')  - 想文件中写入内容(给予方必须是一个string)

    5、feof('已经打开了的文件')  - 判断是否到了文件的末尾

    6、fgets('已经打开了的文件') - 从已经打开了的文件中读取单行

    7、特殊函数

    //将文件截取指定的长度
    ftruncate ( resource $handle , int $size ) blool
    //取得文件的 inode 修改时间,即文件的权限,所有者,所有组或其它 inode 中的元数据
    filectime ( string $filename ) : int
    //取得文件的上次访问时间,比如上次取文件了文件
    fileatime ( string $filename ) : int
    //取得文件修改时间,即文件被入。
    filemtime ( string $filename ) : int
    /*取得文件类型,返回值有如下 7 种类型: file(文件), dir(目录), fifo(命名管道,常用于将信息从一个进程传输到另一个进程), char(字符设备文件,值在I/O传输过程中以字符为单位进行传输的设备,例如键盘,打印机), block(块设备文件), link( 符号链接,是指向文件指针的指针,类似Windows中的快捷方式),
    unknown(未知类型)
    */ filetype ( string $filename ) : string

    //文件锁定
    flock ( resource $handle , int $operation ) : bool
    //operation 可以是以下值之一:
    //LOCK_SH 取得共享锁定(读取的程序)。
    //LOCK_EX 取得独占锁定(写入的程序。
    //LOCK_UN 释放锁定(无论共享或独占)
    
    //返回文件指针读/写的位置
    ftell ( resource $handle ) : int
    
    //在文件指针中定位
    fseek ( resource $handle , int $offset [, int $whence = SEEK_SET ] ) : int
    //offset:偏移量,要移动到文件尾之前的位置,需要给 offset 传递一个负值,并设置 whence 为 SEEK_END。
    //whence :
    //SEEK_SET - 设定位置等于 offset 字节。
    //SEEK_CUR - 设定位置为当前位置加上 offset。
    //SEEK_END - 设定位置为文件尾加上 offset。

    //倒回文件指针的位置
    rewind ( resource $handle ) bool

    8、访问远程文件需要在php.ini里面开启 allow_url_fopen 

    经典示例1:

    $file1 = fopen('e:/file1.txt','r');
    $file2 = fopen('e:/file2.txt','w');
    while(!feof($file1)){
        fwrite($file2,fgets($file1));
    }
    fclose($file1);
    fclose($file2);

    经典示例2:

    // a.txt,b.txt都是1G大小,要把a.txt复制给b.txt的末尾,
    
    function copyAToB(){
        $file_a = fopen('a.txt','r');
        $file_b = fopen('b.txt','a');
        while($str = fread($file_a,1024)){
            fwrite($file_b,$str);
        }
        fclose($file_a);
        fclose($file_b);
    }
    copyAToB('a.txt','b.txt');

     二、php目录操作

    1、常用函数

    //当我们用opendir()打开一个文件后,操作这个文件句柄,操作完了之后,可以用该函数将句柄指向文件开头。
    rewinddir()   

    经典示例3:遍历目录,并输出该目录下的所有文件

     

    本文为袋鼠学习中的总结,如有转载请注明出处:https://www.cnblogs.com/chrdai/p/6373301.html

  • 相关阅读:
    字符串数组去重
    Intel Nehalem微架构Calpella平台机型Windows XP系统下如何开启AHCI硬盘工作模式(XP系统下如何加载AHCI驱动)
    国内外各大免费搜索引擎、导航网址提交入口
    asp.net treeview
    使用Membership,您的登录尝试不成功。请重试"的解决方法
    安装Window Server 2008的些配置
    关于数据,彻底删除数据和恢复数据(转)
    根据Map值 double 类型的进行排序
    Mysql 去回车空格
    Docker安装容器示例
  • 原文地址:https://www.cnblogs.com/chrdai/p/6373301.html
Copyright © 2011-2022 走看看