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数据库抽象层 PDO
May 07 PHP
PHP压缩html网页代码(清除空格,换行符,制表符,注释标记)
Apr 02 PHP
用C/C++扩展你的PHP 为你的php增加功能
Sep 06 PHP
php统计时间和内存使用情况示例分享
Mar 13 PHP
Yii查询生成器(Query Builder)用法实例教程
Sep 04 PHP
跟我学Laravel之快速入门
Oct 15 PHP
php实现的ping端口函数实例
Nov 12 PHP
php一个解析字符串排列数组的方法
May 12 PHP
Laravel如何使用Redis共享Session
Feb 23 PHP
在Laravel5.6中使用Swoole的协程数据库查询
Jun 15 PHP
PHP常用正则表达式精选(推荐)
May 28 PHP
yii2.0框架实现上传excel文件后导入到数据库的方法示例
Apr 13 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中static静态变量的使用方法详解
2010/06/04 PHP
又十个超级有用的PHP代码片段
2015/09/24 PHP
PHP实现腾讯短网址生成api接口实例
2020/12/08 PHP
jquery简单体验
2007/01/10 Javascript
ExtJS的拖拽效果示例
2013/12/09 Javascript
jQuery调用ajax请求的常见方法汇总
2015/03/24 Javascript
jQuery实现平滑滚动页面到指定锚点链接的方法
2015/07/15 Javascript
jquery操作select元素和option的实例代码
2016/02/03 Javascript
jQuery实现右键菜单、遮罩等效果代码
2016/09/27 Javascript
angular.js指令中的controller、compile与link函数的不同之处
2017/05/10 Javascript
JS设计模式之观察者模式实现实时改变页面中金额数的方法
2018/02/05 Javascript
layui表单验证select下拉框实现验证的方法
2019/09/05 Javascript
Layui数据表格判断编辑输入的值,是否为我需要的类型详解
2019/10/26 Javascript
vue 解决form表单提交但不跳转页面的问题
2019/10/30 Javascript
详解python的sorted函数对字典按key排序和按value排序
2018/08/10 Python
Python线程下使用锁的技巧分享
2018/09/13 Python
pycharm在调试python时执行其他语句的方法
2018/11/29 Python
pyttsx3实现中文文字转语音的方法
2018/12/24 Python
python实时检测键盘输入函数的示例
2019/07/17 Python
Win10系统下安装labelme及json文件批量转化方法
2019/07/30 Python
Python 中的 global 标识对变量作用域的影响
2019/08/12 Python
Python-opencv 双线性插值实例
2020/01/17 Python
Python+redis通过限流保护高并发系统
2020/04/15 Python
python3读取autocad图形文件.py实例
2020/06/05 Python
html5使用canvas实现图片下载功能的示例代码
2017/08/26 HTML / CSS
美国时尚在线:Showpo
2017/09/08 全球购物
LUISAVIAROMA德国官网:时尚奢侈品牌购物网站
2020/11/12 全球购物
Tomcat中怎么使用log4j输出所有的log
2016/07/07 面试题
端午节粽子促销活动方案
2014/02/02 职场文书
企业消防安全制度
2014/02/02 职场文书
小学生我的梦想演讲稿
2014/08/21 职场文书
2014年采购工作总结
2014/11/20 职场文书
先进学校事迹材料
2014/12/30 职场文书
2015年员工试用期工作总结
2015/05/28 职场文书
js 数组 fill() 填充方法
2021/11/02 Javascript
一条 SQL 语句执行过程
2022/03/17 MySQL