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编程之高级技巧——利用Mysql函数
Oct 09 PHP
使用bcompiler对PHP文件进行加密的代码
Aug 29 PHP
PHP文件上传原理简单分析
May 29 PHP
一个基于phpQuery的php通用采集类分享
Apr 09 PHP
destoon网站转移服务器后搜索汉字出现乱码的解决方法
Jun 21 PHP
php防止伪造的数据从URL提交方法
Jun 27 PHP
php结合ACCESS的跨库查询功能
Jun 12 PHP
PHP使用PHPexcel导入导出数据的方法
Nov 14 PHP
php表单处理操作
Nov 16 PHP
php把字符串指定字符分割成数组的方法
Mar 12 PHP
Laravel 创建可以传递参数 Console服务的例子
Oct 14 PHP
关于Laravel参数验证的一些疑与惑
Nov 19 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中取得image按钮传递的name值
2006/10/09 PHP
PHP开启gzip页面压缩实例代码
2010/03/11 PHP
PHP __autoload函数(自动载入类文件)的使用方法
2012/02/04 PHP
php获取用户IPv4或IPv6地址的代码
2012/11/15 PHP
php添加文章时生成静态HTML文章的实现代码
2013/02/17 PHP
基于PHP创建Cookie数组的详解
2013/07/03 PHP
php如何连接sql server
2015/10/16 PHP
使用PHP实现下载CSS文件中的图片
2015/12/06 PHP
PHP连接MYSQL数据库实例代码
2016/01/20 PHP
PHP实现页面静态化的超简单方法
2016/09/06 PHP
JavaScript Memoization 让函数也有记忆功能
2011/10/27 Javascript
formvalidator验证插件中有关ajax验证问题
2013/01/04 Javascript
js iframe跨域访问(同主域/非同主域)分别深入介绍
2013/01/24 Javascript
用javascript关闭本窗口不弹出询问框的方法
2014/09/12 Javascript
Javascript监视变量变化的方法
2015/06/09 Javascript
js正则表达式replace替换变量方法
2016/05/21 Javascript
jQuery中借助deferred来请求及判断AJAX加载的实例讲解
2016/05/24 Javascript
JS读写CSS样式的方法汇总
2016/08/16 Javascript
BootStrap modal模态弹窗使用小结
2016/10/26 Javascript
jQuery简单自定义图片轮播插件及用法示例
2016/11/21 Javascript
AngularJs实现聊天列表实时刷新功能
2017/06/15 Javascript
[58:09]Spirit vs NB Supermajor小组赛 A组败者组决赛 BO3 第三场 6.2
2018/06/03 DOTA
Python切片工具pillow用法示例
2018/03/30 Python
使用pandas读取csv文件的指定列方法
2018/04/21 Python
selenium+python自动化测试之多窗口切换
2019/01/23 Python
配置python的编程环境之Anaconda + VSCode的教程
2020/03/29 Python
Zooplus罗马尼亚:宠物食品和配件
2019/11/02 全球购物
英国领先的高级美容和在线皮肤诊所:Face the Future
2020/06/17 全球购物
初中英语教学反思
2014/01/25 职场文书
自行车广告词大全
2014/03/21 职场文书
2015教师个人工作总结范文
2015/03/31 职场文书
党小组考察意见
2015/06/02 职场文书
详解vue身份认证管理和租户管理
2021/05/25 Vue.js
详细介绍Java中的CyclicBarrier
2022/04/13 Java/Android
Android开发之底部导航栏的快速实现
2022/04/28 Java/Android
Java版 单机五子棋
2022/05/04 Java/Android