php+数组存放文件名_php将数组存储为文本文件的三种方法
本篇文章主要介绍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将数组存储为文本文件的三种方法相关推荐
- Android数据存储和读取的三种方法
Android数据存储和读取的三种方法 一.文件存储 二.Context存储 三.SharedPreferences存储 一.文件存储 1.利用文件进行数据的存储 public static bool ...
- java快速寻找一个数组的最大值或最小值, min, max,三种方法
java 中 寻找一个数组中的最大值或最小,除了自己专门编写一个 min 或 max 函数外,还有几种方式方便使用. 1. 使用 stream 将一个数组放进 stream 里面,然后直接调用 str ...
- c语言 数组存放规则,C语言数组详解
数组在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来.这些按序排列的同类数据元素的集合称为数组.在C语言中, 数组属于构造数据类型.一个数组可以分解为多个数组元素,这些数组元 ...
- Java声明数组的三种方法
目录 前言 内容 后记 前言: 这篇主要讲java的三种数组声明方式,这里采用String类型作为典型 内容: package com.izaijia; //数组的三种声明形式 public clas ...
- php数组如何写入txt文件中_php将数组写入到文件的三种方法
php的数组十分强大,有些数据不存入数据库直接写到文件上,用的时候直接从文件中读取,本文章向大家介绍php将数组写入到文件的三种方法. 第一:serialize方法 使用 serialize 将数组序 ...
- php遍历数组哪个效率高,PHP遍历数组的三种方法及效率对比分析_php技巧
本文实例分析了PHP遍历数组的三种方法及效率对比.分享给大家供大家参考.具体分析如下: 今天有个朋友问我一个问题php遍历数组的方法,告诉她了几个.顺便写个文章总结下,如果总结不全还请朋友们指出 第一 ...
- (PASS)JAVA数组去重 三种方法 (不用集合)
第一种方法(只学到数组的看): 定义一个新的数组长度和旧数组的长度一样,存储除去重复数据的旧数组的数据和0, package demo01;import java.sql.Array; import ...
- php 打印对象到文件,php实现将数组或对象写入到文件的方法小结【三种方法】...
本文实例讲述了php实现将数组或对象写入到文件的方法.分享给大家供大家参考,具体如下: php将数组或对象原样写入或保存到文件有三种方法可以实现 第一种方法是使用serialize, 第二种方法是使用 ...
- php遍历数组哪个效率高,PHP遍历数组的三种方法及效率对比分析
PHP遍历数组的三种方法及效率对比分析 发布于 2015-03-04 21:55:27 | 129 次阅读 | 评论: 0 | 来源: 网友投递 PHP开源脚本语言PHP(外文名: Hypertext ...
最新文章
- 深度学习框架PyTorch学习——训练一个分类器
- 用Vue撸一个『A-Z字母滑动检索菜单』
- centos下加入mysql环境变量
- 活动目录系列之十:活动目录数据库的维护
- 学习笔记98—从矩阵坐标转换至MNI坐标
- [云炬Mysql数据库笔记] 第2章 数据库设计
- windows下 网络命令(待续)
- 江西理工大学 微型计算机原理,江西理工大学-微机原理考试(wenwei)作业.docx
- 解决Mac安装软件的“已损坏,无法打开。 您应该将它移到废纸篓”问题
- mini_Xception架构
- SpringMVC中接收数据和返回数据
- [转载] Python的双端队列deque
- 高效的CSV文本处理利器——univocity-parsers
- HTML常用的元素介绍
- linux系统——窗口管理器和桌面环境的区别
- win10浏览器闪退_win10系统ie打不开闪退怎么办
- Java循环之经典练习题
- 量子计算机怎么储存,什么是量子计算机_量子计算机原理_量子计算的两种有效方法...
- MUI学习笔记之图片上传和预览
- iOS判断运营商类型