• 技术文章 >后端开发 >php教程

    php实现操作文件的各种方式总结(附代码)

    不言不言2018-08-03 11:25:42原创795

    这篇文章给大家介绍的内容是关于php实现操作文件的各种方式总结(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

    正常来说,php操作mysql才是绝配,但是如果考虑到安全问题,或者磁盘空间问题,加上涉及的数据比较少的话,那么久可以考虑采用文件的方式进行存储。但是需要注意的时候在Ubuntu下面或者centos下面,经常会由于权限问题的导致打开文件失败,所以需要在操作文件的时候设置权限。

    1、读取文件

    正常的读取文件代码如下

    $filename = "wel.txt";
    $fp = fopen($filename, "r");
    $data = fread($fp, filesize($filename));
    echo $data;
    fclose($fp);

    通过另一种方式读取文件

    $filename = "wel.txt";
    $data = file_get_contents($filename, filesize($filename));
    echo $data;

    一行一行的读取文件

    $filename = "wel.txt";
    $fp = fopen($filename, "rb");
    while(!feof($fp)) {    
    $line = fgets($fp);
        echo $line.'<br/>';
    }fclose($fp);

    其他方式读取

    $filename = "wel.txt";
    readfile($filename);
    $filename = "wel.txt";
    $fp = fopen($filename, "r");
    fpassthru($fp);
    $filename = "wel.txt";
    $filearray = file($filename);
    print_r($filearray);

    2、写入文件

    $filename = "wel.txt";
    $content = "xiaoD";
    $fp = fopen($filename, "a");
    fwrite($fp, $content, strlen($content));
    fclose($fp);

    3、文件加锁

    为了防止在写入文件的时候读取文件,我们经常会对正在写的文件进行加锁

    $filename = "wel.txt";$content = "xiaoD";
    $fp = fopen($filename, "a");
    flock($fp, LOCK_EX);
    fwrite($fp, $content, strlen($content));
    flock($fp, LOCK_UN);
    fclose($fp);

    4、其他函数

    判断文件是否存在

    $filename = "we2l.txt";
    if(file_exists($filename)) {
        readfile($filename);
    } else {    
    echo 'file not exists';
    }

    删除一个文件

    $filename = "we2l.txt";
    if(file_exists($filename)) {
        unlink($filename);
    } else {    
    echo 'file not exists';
    }

    设置文件指针的位置

    fseek($fp, 2);

    获取文件指针的位置

    ftell($fp);

    文件指针设置在文件开始处

    rewind($fp);

    相关文章推荐:

    php如何实现原生zip的测试(纯代码)

    PHP实现写LOG日志的代码

    以上就是php实现操作文件的各种方式总结(附代码)的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:操作文件
    上一篇:php如何实现原生zip的测试(纯代码) 下一篇:PHP中Trait的特性以及用法介绍(附代码)
    VIP课程(WEB全栈开发)

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• 整理总结nginx、php-fpm和mysql等的权限划分• 求sql帖子随机调用有关问题 • 学习phpcms开源产品如何入手 • PHP 四种基本的排序的方法• 看不懂这两行代码啊 请教下
    1/1

    PHP中文网