• 【转载】PHP如何读写文件


    1,PHP如何打开文件

    使用PHP函数fopen()打开一个文件,fopen()一般使用2个参数表示打开文件的路径和文件模式。比如:

    $fp=fopen("../cnbruce.txt",'w');

    其中 "../cnbruce.txt" 就表示打开的cnbruce.txt文件的路径(相对当前执行程序文件的路径),'w'表示以只写的方式打开该文本文件。

    附录:fopen()函数的文件模式总结

    r    只读——读模式,打开文件,从文件头开始读

    r+    可读可写方式打开文件,从文件头开始读写

    w    只写——写方式打开文件,同时把该文件内容清空,把文件指针指向文件开始处。如果该文件已经存在,将删除文件已有内容;如果该文件不存在,则建立该文件

    w+    可读可写方式打开文件,同时把该文件内容清空,把文件指针指向文件开始处。如果该文件不存在,则建立该文件

    a    追加    以只写方式打开文件,把文件指针指向文件末尾处。如果该文件不存在,则建立该文件

    a+    追加    以可读可写方式打开文件,把文件指针指向文件末尾处。如果该文件不存在,则建立该文件

    b    二进制    用于于其他模式进行连接。建议使用该选项,以获得更大程度的可移植性

    注意,如果fopen()函数调用失败,函数将返回false。否则返回指针数据。所以一般在打开了文件后\读写文件前需要检测下文件是否存在。

    <?php

    @ $fp=fopen("http://www.cnbruce.com/abc123",'w');

    if (!$fp)

    {

        echo'文件不存在';

        exit;

    }

    ?>

    其中@符号表示PHP将抑制所有由当前函数调用产生的错误。

    2,PHP如何读文件

    在PHP打开了文件之后就需要对文件进行读取,一般是使用fgets()函数。

    该函数可以从文件中每次读取一行内容,其不断读入数据,值到遇到本行的换行符,或者全文的结束符号EOF。

    介于fgets()函数只能读取一行数据,所以若需要读取文件的所有数据,须使用循环语句来完成。比如:

    while (!feof($fp))

    {

        $bruce=fgets($fp);

        echo $bruce;

    }

    其中feof()函数是用来检测文件是否结束的。该函数唯一参数就是文件指针(即$fp对应打开的文件)。

    当然,在PHP中还可以使用readfile()函数一次读取整个文件。该函数包括了打开文件、读取文件并输出到浏览器中和关闭文件。比如:

    <?php

    $bruce=readfile("http://www.cnbruce.com");

    echo $bruce;

    ?>

    3,PHP如何关闭文件

    使用函数fclose()就可以将文件关闭。

    二,PHP如何写数据到文件

    与PHP读取文件一样,PHP写入文件也需要:打开文件、写入数据和关闭文件。打开和关闭文件的方法上面已经说明,那PHP中写入数据到文件是怎样的呢。

    使用fwrite()函数,比如fwrite(文件路径,写入内容):

    <?php

    $bruce=fopen("http://www.cnbruce.com/","r");

    if(!$bruce)

    {

        echo'文件不存在';

        exit;

    }

    while (!feof($bruce))

    {

        $rose=fgets($bruce);

            $james=fopen("index.htm","a");

            fwrite($james,$rose);

            fclose($james);

    }

    fclose($bruce);

    ?>

    <a href="index.htm">将cnbruce.com的内容生成了本地文件</a>

    了解了PHP的读写文件,就可以把最简单的数据存入文本保存了。

    =============================

    其他有用的文件函数:

    file_exists():查看文件是否存在,返回布尔值

    filesize():查看文件大小,可直接echo输出

    unlink():删除文件,注意PHP中没有delete函数。

     

    原文地址:http://ccp330.blog.163.com/blog/static/4930018820098231442906/

  • 相关阅读:
    Linux内核空间-用户空间通信之debugfs
    Mysql 启动失败 报错 1067
    [置顶] hdu3018解题报告--也是白话几笔画学习总结
    【Todo】蒙特卡洛(蒙特卡罗)树 & 卷积网络
    基本分类方法——KNN(K近邻)算法
    SVM(支持向量机)与统计机器学习 & 也说一下KNN算法
    可重入锁 & 自旋锁 & Java里的AtomicReference和CAS操作 & Linux mutex不可重入
    【Todo】Nginx架构学习
    【转载】C++异常机制的学习
    关于协程的学习 & 线程栈默认10M
  • 原文地址:https://www.cnblogs.com/ljhero/p/1964711.html
Copyright © 2020-2023  润新知