• 技术文章 >后端开发 >PHP问题

    php文件操作之如何将数组数据存入文件(两种方法)

    青灯夜游青灯夜游2021-08-31 09:02:25原创2134
    在之前的文章《利用PHP如何检查空值(4种方法)》中,我们介绍了利用PHP检查一个给定的值(变量)是不是空值的方法。这次我们来聊聊PHP存数据,看看怎么将数组数据存入指定文件中,感兴趣的朋友可以学习了解一下~

    →相关推荐:php文件操作系列大汇总(持续更新~)

    在开发过程中,我们常用var_dump()来打印数组内容,但有时候我们不方便通过浏览器查看调试信息,这时候可以将信息输出到文件中查看。今天本文就来给大家介绍两种将数组数据写入到文件中的方法。

    方法1:利用var_export()函数

    var_export — 输出或返回变量的可解析字符串表示

    语法:var_export(mixed $value, bool $return = false)

    此函数返回关于传递给该函数的变量的结构信息,它和 var_dump() 类似,不同的是其返回的表示是合法的 PHP 代码。我们可以通过将函数的第二个参数设置为 TRUE,从而返回变量的表示。

    我们通过下面示例来看看利用var_export()函数怎么将数组数据存入文件

    <?php
    //$cache的值是更新缓存时从数据库中取出来的
    $cache = array(
        'id'            =>  2,
        'name'          =>  '李娜', 
        'age'           =>  23,
        'sex'           =>  '女',
        'college'       =>  "软件技术",
        'subject'       =>  "PHP编程"
    ); 
    
    //将数据写入缓存文件
    $content = "<?php\nreturn ".var_export($cache,true)."\n?>";    //这里使用var_export()
    file_put_contents('./cache.php', $content);
    ?>

    分析代码:

    因此一开始为空文件的cache.php中,现在的内容为:

    3.png

    调用缓存文件的时候只需要使用require()即可将缓存文件的内容复制给一个变量,然后输出这个数组变量即可:

    <?php
    $cache = require('./cache.php');
    var_dump($cache);
    ?>

    输出结果为:

    4.png

    方法2:利用serialize方法

    使用 serialize 将数组序列化,存储在文件中;调用时,再使用 unserialize 还原。

    我们通过下面示例来看看利用serialize()函数怎么将数组数据存入文件

    <?php
    $file='./cache.php'; 
    $cache = array(
        'id'            =>  2,
        'name'          =>  '李娜', 
        'age'           =>  23,
        'sex'           =>  '女',
        'college'       =>  "软件技术",
        'subject'       =>  "PHP编程"
    ); 
    //缓存 
    if(false!==fopen($file,'w+')){ 
      file_put_contents($file,serialize($cache));//写入缓存 
    } 
    ?>

    使用file_put_contents($file,serialize($cache))将序列化后的数组数据存储在cache.php文件中。因此一开始为空文件的cache.php中,现在的内容为:

    1.png

    读出缓存的时候需要使用unserialize 还原cache.php里数据即可

    <?php
    //读出缓存 
    $file='./cache.php'; 
    $handle=fopen($file,'r'); 
    $cache=unserialize(fread($handle,filesize($file))); 
    var_dump($cache);
    ?>

    输出结果为:

    5.png

    好了就说到这里了,有其他想知道的,可以点击这个哦。→ →PHP文件基础操作

    推荐:PHP面试题大汇总(收藏)》《php视频教程

    以上就是php文件操作之如何将数组数据存入文件(两种方法)的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    上一篇:利用PHP如何检查空值(4种方法) 下一篇:PHP算法练习十二:获取n和51之间的绝对值并按要求返回值
    VIP课程(WEB全栈开发)

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• php文件操作之怎么快速知道文件的大小、类型和权限• php文件操作之返回文件所在的位置信息(绝对地址)• php文件操作之提取文件/目录的名称• php文件操作之去除给定路径的文件或目录
    1/1

    PHP中文网