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 相关文章推荐
MySQL授权问题总结
May 06 PHP
PHP表单验证的3个函数ISSET()、empty()、is_numeric()的使用方法
Aug 22 PHP
fetchAll()与mysql_fetch_array()的区别详解
Jun 05 PHP
php自动加载机制的深入分析
Jun 08 PHP
Mac OS下配置PHP+MySql环境
Feb 25 PHP
Yii视图CGridView列表用法实例分析
Jul 12 PHP
php实现URL加密解密的方法
Nov 17 PHP
PHP基于MySQLI函数封装的数据库连接工具类【定义与用法】
Aug 11 PHP
php之可变函数的实例详解
Sep 13 PHP
Laravel定时任务的每秒执行代码
Oct 22 PHP
YII2框架中behavior行为的理解与使用方法示例
Mar 13 PHP
thinkphp5.1 框架钩子和行为用法实例分析
May 25 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与SQL注入攻击防范小技巧
2011/09/16 PHP
php求两个目录的相对路径示例(php获取相对路径)
2014/03/27 PHP
开源php中文分词系统SCWS安装和使用实例
2014/04/11 PHP
实现PHP+Mysql无限分类的方法汇总
2015/03/02 PHP
php递归函数三种实现方法及如何实现数字累加
2015/08/07 PHP
thinkphp中的多表关联查询的实例详解
2017/10/12 PHP
javascript编程起步(第二课)
2007/02/27 Javascript
从阿里妈妈发现的几个不错的表单验证函数
2007/09/21 Javascript
JS 获取span标签中的值的代码 支持ie与firefox
2009/08/24 Javascript
表单元素的submit()方法和onsubmit事件应用概述
2013/02/01 Javascript
侧栏跟随滚动的简单实现代码
2013/03/18 Javascript
JavaScript创建对象的写法
2013/08/29 Javascript
Jquery利用mouseenter和mouseleave实现鼠标经过弹出层且可以点击
2014/02/12 Javascript
动态添加删除表格行的js实现代码
2014/02/28 Javascript
jquery+ajax请求且带返回值的代码
2015/08/12 Javascript
浅析node连接数据库(express+mysql)
2015/11/30 Javascript
快速掌握Node.js事件驱动模型
2016/03/21 Javascript
JS延时器提示框的应用实例代码解析
2016/04/27 Javascript
微信小程序  modal详解及实例代码
2016/11/09 Javascript
js仿微博动态栏功能
2017/02/22 Javascript
Javascript仿京东放大镜的效果
2017/03/01 Javascript
Vue+axios 实现http拦截及路由拦截实例
2017/04/25 Javascript
JavaScript中立即执行函数实例详解
2017/11/04 Javascript
vue通过滚动行为实现从列表到详情,返回列表原位置的方法
2018/08/31 Javascript
vue+animation实现翻页动画
2020/06/29 Javascript
解决VUE自定义拖拽指令时 onmouseup 与 click事件冲突问题
2020/07/24 Javascript
[33:33]完美世界DOTA2联赛PWL S2 FTD.C vs SZ 第二场 11.27
2020/11/30 DOTA
python进程类subprocess的一些操作方法例子
2014/11/22 Python
Python基于递归实现电话号码映射功能示例
2018/04/13 Python
Python简单基础小程序的实例代码
2019/04/28 Python
centos 安装Python3 及对应的pip教程详解
2019/06/28 Python
如何基于Python实现word文档重新排版
2020/09/29 Python
Selenium Webdriver元素定位的八种常用方式(小结)
2021/01/13 Python
台湾乐天市场:日本No.1的网路购物网站
2017/03/22 全球购物
大学生村官任职感言
2014/01/09 职场文书
将Python代码打包成.exe可执行文件的完整步骤
2021/05/12 Python