本篇文章主要介绍php将数组存储为文本文件的三种方法,感兴趣的朋友参考下,希望对大家有所帮助。

(1)利用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)));

(2)自创的将数组保存为标准的数组格式,虽然保存时复杂了点但是调用时简单<?php

$file='./cache/phone.php';

$array=array('color'=> array('blue','red','green'),'size'=> array('small','medium','large'));

cache_write($file,$array,'rows',false);

//写入

function cache_write($filename,$values,$var='rows',$format=false){

$cachefile=$filename;

$cachetext="<?php \r\n".'$'.$var.'='.arrayeval($values,$format).";";

return writefile($cachefile,$cachetext);

}

//数组转换成字串

function arrayeval($array,$format=false,$level=0){

$space=$line='';

if(!$format){

for($i=0;$i<=$level;$i++){

$space.="\t";

}

$line="\n";

}

$evaluate='Array'.$line.$space.'('.$line;

$comma=$space;

foreach($array as $key=> $val){

$key=is_string($key)?'\''.addcslashes($key,'\'\\').'\'':$key;

$val=!is_array($val)&&(!preg_match('/^\-?\d+$/',$val)||strlen($val) > 12)?'\''.addcslashes($val,'\'\\').'\'':$val;

if(is_array($val)){

$evaluate.=$comma.$key.'=>'.arrayeval($val,$format,$level+1);

}else{

$evaluate.=$comma.$key.'=>'.$val;

}

$comma=','.$line.$space;

}

$evaluate.=$line.$space.')';

return $evaluate;

}

//写入文件

function writefile($filename,$writetext,$openmod='w'){

if(false!==$fp=fopen($filename,$openmod)){

flock($fp,2);

fwrite($fp,$writetext);

fclose($fp);

return true;

}else{

return false;

}

}

(3)利用 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 '创建失败';

}

总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助。

相关推荐:

php+数组存放文件名_php将数组存储为文本文件的三种方法相关推荐

  1. Android数据存储和读取的三种方法

    Android数据存储和读取的三种方法 一.文件存储 二.Context存储 三.SharedPreferences存储 一.文件存储 1.利用文件进行数据的存储 public static bool ...

  2. java快速寻找一个数组的最大值或最小值, min, max,三种方法

    java 中 寻找一个数组中的最大值或最小,除了自己专门编写一个 min 或 max 函数外,还有几种方式方便使用. 1. 使用 stream 将一个数组放进 stream 里面,然后直接调用 str ...

  3. c语言 数组存放规则,C语言数组详解

    数组在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来.这些按序排列的同类数据元素的集合称为数组.在C语言中, 数组属于构造数据类型.一个数组可以分解为多个数组元素,这些数组元 ...

  4. Java声明数组的三种方法

    目录 前言 内容 后记 前言: 这篇主要讲java的三种数组声明方式,这里采用String类型作为典型 内容: package com.izaijia; //数组的三种声明形式 public clas ...

  5. php数组如何写入txt文件中_php将数组写入到文件的三种方法

    php的数组十分强大,有些数据不存入数据库直接写到文件上,用的时候直接从文件中读取,本文章向大家介绍php将数组写入到文件的三种方法. 第一:serialize方法 使用 serialize 将数组序 ...

  6. php遍历数组哪个效率高,PHP遍历数组的三种方法及效率对比分析_php技巧

    本文实例分析了PHP遍历数组的三种方法及效率对比.分享给大家供大家参考.具体分析如下: 今天有个朋友问我一个问题php遍历数组的方法,告诉她了几个.顺便写个文章总结下,如果总结不全还请朋友们指出 第一 ...

  7. (PASS)JAVA数组去重 三种方法 (不用集合)

    第一种方法(只学到数组的看): 定义一个新的数组长度和旧数组的长度一样,存储除去重复数据的旧数组的数据和0, package demo01;import java.sql.Array; import ...

  8. php 打印对象到文件,php实现将数组或对象写入到文件的方法小结【三种方法】...

    本文实例讲述了php实现将数组或对象写入到文件的方法.分享给大家供大家参考,具体如下: php将数组或对象原样写入或保存到文件有三种方法可以实现 第一种方法是使用serialize, 第二种方法是使用 ...

  9. php遍历数组哪个效率高,PHP遍历数组的三种方法及效率对比分析

    PHP遍历数组的三种方法及效率对比分析 发布于 2015-03-04 21:55:27 | 129 次阅读 | 评论: 0 | 来源: 网友投递 PHP开源脚本语言PHP(外文名: Hypertext ...

最新文章

  1. 深度学习框架PyTorch学习——训练一个分类器
  2. 用Vue撸一个『A-Z字母滑动检索菜单』
  3. centos下加入mysql环境变量
  4. 活动目录系列之十:活动目录数据库的维护
  5. 学习笔记98—从矩阵坐标转换至MNI坐标
  6. [云炬Mysql数据库笔记] 第2章 数据库设计
  7. windows下 网络命令(待续)
  8. 江西理工大学 微型计算机原理,江西理工大学-微机原理考试(wenwei)作业.docx
  9. 解决Mac安装软件的“已损坏,无法打开。 您应该将它移到废纸篓”问题
  10. mini_Xception架构
  11. SpringMVC中接收数据和返回数据
  12. [转载] Python的双端队列deque
  13. 高效的CSV文本处理利器——univocity-parsers
  14. HTML常用的元素介绍
  15. linux系统——窗口管理器和桌面环境的区别
  16. win10浏览器闪退_win10系统ie打不开闪退怎么办
  17. Java循环之经典练习题
  18. 量子计算机怎么储存,什么是量子计算机_量子计算机原理_量子计算的两种有效方法...
  19. MUI学习笔记之图片上传和预览
  20. iOS判断运营商类型

热门文章

  1. 马哥linux第六周作业
  2. 企业Shell面试题18:单词及字母去重排序案例
  3. 兼容所有浏览器的网页制作方法
  4. oracle中创建游标,oracle 存储过程创建游标
  5. Hive与Hadoop的调用关系
  6. thrift介绍及应用(一)—介绍
  7. 大话php设计模式视频,大话PHP设计模式
  8. 图像增强_Keras 常用的图像增强方式
  9. 服务器虚拟化性能瓶颈怎么办,如何突破虚拟化三大瓶颈
  10. [转载] Java 将字符串首字母转为大写 - 利用ASCII码偏移