php实现将数组或对象写入到文件的方法小结【三种方法】


Posted in PHP onApril 22, 2020

本文实例讲述了php实现将数组或对象写入到文件的方法。分享给大家供大家参考,具体如下:

php将数组或对象原样写入或保存到文件有三种方法可以实现

第一种方法是使用serialize,

第二种方法是使用print_r,

第三种方法是使用var_export,

本文章向大家介绍这三种方法是如何将数组写入到文件的,需要的朋友可以参考一下。

第一:serialize方法

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

<?php 
$file='./cache/phone.php'; 
$array=array('color'=> array('blue','red','green'),'size'=> array('small','medium','large')); 
//缓存 
if(false!==fopen($file,'w+')){ 
 file_put_contents($file,serialize($array));//写入缓存 
} 
//读出缓存 
$handle=fopen($file,'r'); 
$cacheArray=unserialize(fread($handle,filesize($file)));

第二:print_r方法

用print_r 将数组打印到txt文件中。

<?php
$b = array (
  'm' => 'monkey', 
  'foo' => 'bar', 
  'x' => array ('x', 'y', 'z'));

$results = print_r($b, true); 
file_put_contents('filename.txt', print_r($b, true));
?>

第三:var_export方法

用var_export 直接将数组以完整数组的形式存储到文件中。

<?php 
$file='./cache/phone.php'; 
$array=array('color'=> array('blue','red','green'),'size'=> array('small','medium','large')); 
//缓存 
$text='<?php $rows='.var_export($array,true).';'; 
if(false!==fopen($file,'w+')){ 
 file_put_contents($file,$text); 
}else{ 
 echo '创建失败'; 
}

将对象完整的存储并追加到文件末尾

$file = "notic_" . date("Ymd") . ".log";
$ct = date("Y-m-d H:i:s", time());

file_put_contents($file, var_export($object,true)."\r\n", FILE_APPEND);

ps: 正常情况下输出到网页的数组会有限制,

php var_dump函数对数组进行打印时,对多维数组中数组的层级越多越深层,子数组会不显示,只用省略号代替。这样一来不便于程序的调试

php的var_dump函数是php模块中xdebug模块所支持的,所以接下来我们需要配置这个xdebug即可。

修改 php.ini

;设置显示最大的子节点数
xdebug.var_display_max_children=128
;设置显示最大的字节数
xdebug.var_display_max_data=512
;设置显示最大得层级(深度)
xdebug.var_display_max_depth=15

然后重启 php 服务

systemctl reload php-fpm nginx

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php中批量替换文件名的实现代码
Jul 20 PHP
php htmlspecialchars()与shtmlspecialchars()函数的深入分析
Jun 05 PHP
php中并发读写文件冲突的解决方案
Oct 25 PHP
PHP制作百度词典查词采集器
Jan 29 PHP
简单谈谈PHP vs Node.js
Jul 17 PHP
php实现简易聊天室应用代码
Sep 23 PHP
Laravel中间件实现原理详解
Oct 09 PHP
PHP简单数据库操作类实例【支持增删改查及链式操作】
Oct 10 PHP
php微信开发之关键词回复功能
Jun 13 PHP
laravel 5.3 单用户登录简单实现方法
Oct 14 PHP
PHP上传图片到数据库并显示的实例代码
Dec 20 PHP
PHP 超级全局变量相关总结
Jun 30 PHP
PHP 实现 JSON 数据的编码和解码操作详解
Apr 22 #PHP
PHP 实现 WebSocket 协议原理与应用详解
Apr 22 #PHP
php模拟实现斗地主发牌
Apr 22 #PHP
PHP实现随机发扑克牌
Apr 22 #PHP
PHP使用PDO 连接与连接管理操作实例分析
Apr 21 #PHP
PHP实现随机发放扑克牌
Apr 21 #PHP
PHP 构造函数和析构函数原理与用法分析
Apr 21 #PHP
You might like
phpExcel导出大量数据出现内存溢出错误的解决方法
2013/02/28 PHP
关于扩展 Laravel 默认 Session 中间件导致的 Session 写入失效问题分析
2016/01/08 PHP
javascript背投广告代码的完善
2008/04/08 Javascript
jQuery 剧场版 你必须知道的javascript
2009/05/27 Javascript
JavaScript 异步调用框架 (Part 5 - 链式实现)
2009/08/04 Javascript
JQuery 动态扩展对象之另类视角
2010/05/25 Javascript
Javascript this 的一些学习总结
2012/08/31 Javascript
详解Angular.js的$q.defer()服务异步处理
2016/11/06 Javascript
基于JavaScript实现熔岩灯效果导航菜单
2017/01/04 Javascript
详解PHP中pathinfo()函数导致的安全问题
2017/01/05 Javascript
ionic3 懒加载
2017/08/16 Javascript
AngularJS中下拉框的高级用法示例
2017/10/11 Javascript
10个经典的网页鼠标特效代码
2018/01/09 Javascript
基于vue2.x的电商图片放大镜插件的使用
2018/01/22 Javascript
vuex 动态注册方法 registerModule的实现
2019/07/03 Javascript
ES2020 已定稿,真实场景案例分析
2020/05/25 Javascript
VUE前端从后台请求过来的数据进行转换数据结构操作
2020/11/11 Javascript
[02:31]2018年度DOTA2最具人气选手-完美盛典
2018/12/16 DOTA
[05:53]敌法师的金色冠名ID"BurNIng",是传说,是荣耀
2020/07/11 DOTA
Python爬虫包BeautifulSoup实例(三)
2018/06/17 Python
Python函数参数操作详解
2018/08/03 Python
Python3.5多进程原理与用法实例分析
2019/04/05 Python
pandas 数据结构之Series的使用方法
2019/06/21 Python
Python实现最大子序和的方法示例
2019/07/05 Python
python使用tomorrow实现多线程的例子
2019/07/20 Python
Python八皇后问题解答过程详解
2019/07/29 Python
美国咖啡批发网站:Coffee.org
2017/06/29 全球购物
幼儿师范毕业生自荐信
2013/11/09 职场文书
餐厅执行经理岗位职责范本
2014/02/26 职场文书
写好自荐信需做到的5要点
2014/03/07 职场文书
法院授权委托书范文
2014/08/02 职场文书
安全生产标语口号
2015/12/26 职场文书
对Golang中的FORM相关字段理解
2021/05/02 Golang
MySQL5.7并行复制原理及实现
2021/06/03 MySQL
python实现层次聚类的方法
2021/11/01 Python
Python编程中内置的NotImplemented类型的用法
2022/03/23 Python