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 相关文章推荐
让你的网站首页自动选择语言转跳
Dec 06 PHP
IIS7.X配置PHP运行环境小结
Jun 09 PHP
php设计模式 Strategy(策略模式)
Jun 26 PHP
PHP父类调用子类方法的代码例子
Apr 09 PHP
php操作XML、读取数据和写入数据的实现代码
Aug 15 PHP
php中的观察者模式简单实例
Jan 20 PHP
php编程每天必学之表单验证
Mar 01 PHP
PHP进行批量任务处理不超时的解决方法
Jul 11 PHP
php通过会话控制实现身份验证实例
Oct 18 PHP
PHP之将POST数据转化为字符串的实现代码
Nov 03 PHP
PHP使用递归算法无限遍历数组示例
Jan 13 PHP
PHP如何使用array_unshift()在数组开头插入元素
Sep 01 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
不错的一篇面向对象的PHP开发模式(简写版)
2007/03/15 PHP
PHP curl_setopt()函数实例代码与参数分析
2011/06/02 PHP
WebQQ最新登陆协议的用法
2014/12/22 PHP
php简单操作mysql数据库的类
2015/04/16 PHP
Thinkphp 框架扩展之数据库驱动常用方法小结
2020/04/23 PHP
静态页面的值传递(三部曲)
2006/09/25 Javascript
不安全的常用的js写法
2009/09/15 Javascript
一个js的tab切换效果代码[代码分离]
2010/04/11 Javascript
jquery easyui combox一些实用的小方法
2013/12/25 Javascript
JS中类或对象的定义说明
2014/03/10 Javascript
一个仿糯米弹框效果demo
2014/07/22 Javascript
jQuery获取checkboxlist的value值的方法
2015/09/27 Javascript
JavaScript6 let 新语法优势介绍
2016/07/15 Javascript
AngularJS使用ng-repeat遍历二维数组元素的方法详解
2017/11/11 Javascript
vue2.0$nextTick监听数据渲染完成之后的回调函数方法
2018/09/11 Javascript
微信小程序学习笔记之登录API与获取用户信息操作图文详解
2019/03/29 Javascript
vue实现移动端项目多行文本溢出省略
2020/07/29 Javascript
JavaScript中如何调用Java方法
2020/09/16 Javascript
Vue +WebSocket + WaveSurferJS 实现H5聊天对话交互的实例
2020/11/18 Vue.js
Python中处理时间的几种方法小结
2015/04/09 Python
介绍Python中的文档测试模块
2015/04/28 Python
Python中的if、else、elif语句用法简明讲解
2016/03/11 Python
Python+matplotlib实现计算两个信号的交叉谱密度实例
2018/01/08 Python
TensorFlow打印tensor值的实现方法
2018/07/27 Python
让代码变得更易维护的7个Python库
2018/10/09 Python
Django中使用极验Geetest滑动验证码过程解析
2019/07/31 Python
python爬虫解决验证码的思路及示例
2019/08/01 Python
Python如何调用外部系统命令
2019/08/07 Python
Python3 全自动更新已安装的模块实现
2020/01/06 Python
canvas绘制太极图的实现示例
2020/04/29 HTML / CSS
机械专业毕业生自我鉴定2014
2014/10/04 职场文书
股权转让协议范本
2014/12/07 职场文书
2015年城管执法工作总结
2015/07/23 职场文书
2016新年晚会开场白
2015/12/03 职场文书
爱国之歌(8首)
2019/09/29 职场文书
Python手拉手教你爬取贝壳房源数据的实战教程
2021/05/21 Python