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代码
Aug 08 PHP
php中用于检测一个地理IP地址是否可用的代码
Feb 19 PHP
php使用curl出现Expect:100-continue解决方法
Mar 03 PHP
Yii2创建控制器(createController)方法详解
Jul 23 PHP
php判断手机浏览还是web浏览,并执行相应的动作简单实例
Jul 28 PHP
Laravel使用memcached缓存对文章增删改查进行优化的方法
Oct 08 PHP
thinkPHP5 ACL用户权限模块用法详解
May 10 PHP
Laravel 5.5 的自定义验证对象/类示例代码详解
Aug 29 PHP
php获取微信共享收货地址的方法
Dec 21 PHP
PHP7内核CGI与FastCGI详解
Apr 14 PHP
thinkphp5框架调用其它控制器方法 实现自定义跳转界面功能示例
Jul 03 PHP
在laravel中实现ORM模型使用第二个数据库设置
Oct 24 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获取post中的json数据的实现方法
2011/06/08 PHP
PHP判断是否连接上网络的方法
2015/07/01 PHP
Zend Framework教程之动作的基类Zend_Controller_Action详解
2016/03/07 PHP
PHP并发查询MySQL的实例代码
2017/08/09 PHP
javascript 类定义的4种方法
2009/09/12 Javascript
JavaScript 学习笔记(五)
2009/12/31 Javascript
清空上传控件input file的值
2010/07/03 Javascript
javascript中RegExp保留小数点后几位数的方法分享
2013/08/13 Javascript
纯javascript实现四方向文本无缝滚动效果
2015/06/16 Javascript
jQuery实现鼠标滑过链接控制图片的滑动展开与隐藏效果
2015/10/28 Javascript
用jQuery获取table中行id和td值的实现代码
2016/05/19 Javascript
浅谈window.onbeforeunload() 事件调用ajax
2016/06/29 Javascript
axios拦截设置和错误处理方法
2018/03/05 Javascript
Angular6 正则表达式允许输入部分中文字符
2018/09/10 Javascript
angularjs使用div模拟textarea文本框的方法
2018/10/02 Javascript
JS用最简单的方法实现四舍五入
2019/08/27 Javascript
vue 页面回退mounted函数不执行的解决方案
2020/07/26 Javascript
vue用ant design中table表格,点击某行时触发的事件操作
2020/10/28 Javascript
[02:43]中国五虎出征TI3视频
2013/08/02 DOTA
快速排序的算法思想及Python版快速排序的实现示例
2016/07/02 Python
详解Django的CSRF认证实现
2018/10/09 Python
python实现串口通信的示例代码
2020/02/10 Python
python logging模块的使用
2020/09/07 Python
实列教程 一款基于jquery和css3的响应式二级导航菜单
2014/11/13 HTML / CSS
室内设计自我鉴定
2013/10/15 职场文书
平面网站制作专科生的自我评价分享
2013/12/11 职场文书
毕业生护理专业个人求职信范文
2014/01/04 职场文书
十八大闭幕感言
2014/01/22 职场文书
制作部班长职位说明书
2014/02/26 职场文书
会计自荐信范文
2014/03/09 职场文书
创建文明学校实施方案
2014/03/11 职场文书
2014年党支部承诺书
2014/05/30 职场文书
市场营销专业自荐书
2014/06/10 职场文书
专业技术职务聘任证明
2015/03/02 职场文书
企业内部管理控制:采购授权审批制度范本
2020/01/19 职场文书
【海涛解说】pis亲自推荐,其实你从来不会玩NW
2022/04/01 DOTA