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 '创建失败';

}

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

相关推荐:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/550586.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php 屏蔽ctrl c,ctrl+c用不了怎么回事

解决办法&#xff1a;首先在运行里输入clipbrd打开剪贴板查看器看看里面是什么东西如果是剪贴板卡死了的话重启可解决问题如果不是复制个别的东西还是那个那么需要杀毒了&#xff01;(可能是灰鸽子病毒&#xff0c;冲击、震荡、狙击等都有可能导致不能复制粘贴剪切)方法一&…

php生日计算年龄,php根据生日计算年龄的方法

摘要&#xff1a;本文实例讲述了php根据生日计算年龄的方法。分享给大家供大家参考。具体如下&#xff1a;<?php function birthday($birthday){$age strtotime($birthday);if($age false){return false;本文实例讲述了php根据生日计算年龄的方法。分享给大家供大家参考。…

jq php异步上传图片,php+jquery Ajax异步上传图片(ajaxSubmit)实例_PHP教程

$photo_typesarray(image/jpg, image/jpeg,image/png,image/pjpeg,image/gif,image/bmp,image/x-png);//定义上传格式$max_size700000; //上传照片大小限制,默认700k$photo_folder"upload/".date("Y")."/".date("m")."/".da…

solaris php,针对 Solaris 的安装提示

用户评论:[#1]ariedederde [2011-06-18 00:58:25]Install php on solaris express:pkg search phppart of output is e.g.pkg:/web/php-525.2.12-0.151.0.1pkg install php-52php binary installs in /usr/php/5.2/bin/php[#2]julie at baumler dot com [2006-12-28 21:22:35]T…

php ajax复选框是否选中的值,jquery-ajax - php+ajax分页时,checkbox复选框选中的问题...

目的&#xff1a;所有的数据实现分页显示&#xff0c;不是查询所有的数据&#xff0c;而是每次取固定的条数。而且在每页选中的数据ID都可以保存&#xff0c;一起提交选中的数据&#xff0c;做相应的操作。比如第一页选中2条&#xff0c;第二页选中3条&#xff0c;提交时是5条&…

php 循环大数组 卡死,PHP 大数组循环问题_PHP教程

小妹刚刚改投PHP门下。领导叫我把这段代码的执行效率优化一下我现在知道的优化就是小循环外面&#xff0c;好像在这没啥用。请问各位大侠我该怎么优化ne ? 领导说放内存里什么的。基本就是2个大数组不停的循环算权重。_aItems $aItems;$this->_aMatchs array();$this->…

java在控制台打印余弦曲线,java打印正弦曲线示例

代码如下:/** 绘制0到360的正弦曲线* 分两种情形&#xff0c;y>0和y<0进行绘制* 每种情形中要考虑每行打印两个"*"字符* 并在打印第二个"*"字符后换行*/package hundred;import java.lang.Math;public class SinTest {public static void main(Strin…

matlab中逻辑符号,matlab 逻辑运算符号

逻辑运算符号: 关于符号逻辑的介绍&#xff0c;缺失&#xff1a;matlab运算3699/9符号逻辑又称数理逻辑、理论逻辑。 它是数学的一个分支&#xff0c;是用数学方法研究逻辑或形式逻辑的学科。其研究对象是对证明和计算这两个直观概念进行符号化以后的形式系统。数理逻辑是数学基…

matlab怎么计算行列式,Matlab 线性代数(一)–行列式与方程组求解 | 学步园

1.%用克莱姆法则求解方程组clearninput(方程个数)Ainput(系数矩阵A)binput(常数列向量b)if((size(A)~[n,n])|(size(b)~[n,1])) %判断矩阵A和向量b输入格式是否正确disp(输入不正确&#xff0c;要求A是n阶方阵&#xff0c;b是n维列向量) %disp:显示字符串elseif det(A)0 %判断系…

matlab计算16 1 3近似值,8. 科学计算软件Matlab中默认情况下π为近似值3.1416,该近似值与π真值的( )...

柄残的叶的药密集排列突起可见基和材轮状&#xff0c;学计下π部略膨大根头。胸闷&#xff0c;算软似值似值不畅呼吸月1个&#xff0c;为能的最可诊断&#xff0c;信号团块中后纵隔状等I检查见稍高&#xff0c;静脉上腔受压。白细胞&#xff1a;中真值&#xff0c;当病现声音嘶…

小波基函数构造matlab,五种常见小波基函数及其matlab实现全解.docx

五种常见小波基函数及其matlab实现全解与标准的傅里叶变换相比&#xff0c;小波分析中使用到的小波函数具有不唯一性&#xff0c;即小波函数 具有多样性。小波分析在工程应用中&#xff0c;一个十分重要的问题就是最优小波基的选择问题&#xff0c;因为用不同的小波基分析同一个…

php单下划线的函数,基于PHP函数的操作方法

如下所示&#xff1a;//简单函数function show(){echo "hello";}show();//有参数的函数function show($a){echo "$a";}show("world");//有返回值的函数function show(){return "小V&#xff0c;你好&#xff01;";}echo show();functi…

php 识别图片主色调,PHP 判断图片主色调的简单示例

这篇文章主要为大家详细介绍了PHP 判断图片主色调的简单示例&#xff0c;具有一定的参考价值&#xff0c;可以用来参考一下。这段代码可以帮助你判断任意图片的主色调&#xff0c;使用了简单的统计算法实现 &#xff0c;感兴趣的小伙伴&#xff0c;下面一起跟随512笔记的小编罗…

加密扩展库 php,如何利Mcrypt扩展库进行加密和解密_php

综述&#xff1a;Mcrypt 2.4.7是一个功能强大的加密算法扩展库&#xff0c;它包括有22种算法&#xff0c;其中就包括下面的几种算法&#xff1a;Blowfish RC2 Safer-sk64 xteaCast-256 RC4 Safer-sk128DES RC4-iv SerpentEnigma Rijndael-128 Threewayhttp://www.gaodaima.com/…

java中数组中添加新元素,求解!!!往ArrayList数组里添加元素,貌似没加进去。...

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼points、pointl、pointp、L、P都是数组&#xff0c;分别是点、线、面。它们的关系是&#xff1a;points里包含多个point&#xff0c;L里包含多条pointl&#xff0c;P里包含多个pointp.我想往里面添加点要素。private void addActio…

php中数组下标,PHP数组介绍_php

数组基础&#xff1a;php中&#xff0c;数组的下标可以整数&#xff0c;也可以是字符串php中&#xff0c;数组的元素顺序不是由下标决定&#xff0c;而是由其“加入”的顺序决定定义&#xff1a;$arr1 array(元素1&#xff0c;元素2&#xff0c;。。。。。。);array(1,1.1,5,a…

php支持ssi,让Apache支持SHTML(SSI)的配置方法

shtml和asp有一些相似&#xff0c;以shtml命名的文件里&#xff0c;使用了ssi的一些指令&#xff0c;就像asp中的指令&#xff0c;你可以在SHTML文件中写入SSI指令&#xff0c;当客户端访问这些shtml文件时&#xff0c;服务器端会把这些SHTML文件进行读取和解释&#xff0c;把S…

python 发红包import random用redenv,Python微信发红包编码案例 微信发红包的架构模式 - push博客...

Python手机微信红包优化算法案例#!/usr/bin/env python# coding: utf-8import random# m : 红包个数# n : 红包人数# packet : 本次抢到的金额 , 所有金额以分为计算def redEnvelope(m,n):remain m*100 #剩余金额nn n #剩余人数for i in range(1,n):if remain 0 :print(已经…

oracle hang analyze,hanganalyze 分析数据库挂起

0 概览hanganaylze主要步骤&#xff1a;oradebugsetmypidoradebugunlimit--RAC环境oradebugsetinstall--级别一般指定为3足够了oradebughanganalyze3--RAC环境oradebug-g defdump systemstate10oradebugtracefile_name解读 hanganalyze 报告State of ALL nodes([nodenum]/cnode…

先学Oracle还是Java,事前学习过的java和Oracle笔记没删除的都带过来

一个clientimport java.net.*;import java.io.*;public class client {public static void main(String[] args)throws Exception{Socket ssnew Socket("127.0.0.1",6666);OutputStream osss.getOutputStream();DataOutputStream dosnew DataOutputStream(os);dos.wr…