php中将数组存到文件里的实现代码


Posted in PHP onJanuary 19, 2012

第一次分享代码;(写得很烂..紧张纳紧张纳)
php的数组十分强大,有些数据不存入数据库直接写到文件上,用的时候直接require。
(实际中有用到把数组存在到文件中的功能,不过分享的代码跟实际应用中的有点不同)

<?php 
function cacheArr(&$data){ 
if(!$data)throw new Exception('数组不能为空'); 
foreach($GLOBALS as $key=>$value){ 
$str=$GLOBALS[$key]; 
$GLOBALS[$key]='changed'; 
if($data=='changed'){ 
$strName=$key; 
break; 
} 
$GLOBALS[$key]=$str; 
} 
ob_clean(); 
ob_start(); 
echo "<?php\n"; 
function echoArr($arr,$arrName){ 
$arrCount=count($arr);$i==0; 
foreach($arr as $key=>$value){ 
++$i; 
if(is_array($value)){ 
echo "\n".(is_numeric($key)?$key:'\''.$key.'\'').'=>array('; 
echoArr($value,$arrName.(is_numeric($key)?'['.$key.']':'[\''.$key.'\']')); 
if($i!=$arrCount)echo '),'; 
else echo ')'; 
continue; 
} 
if($i!=$arrCount)echo ((is_numeric($key))?$key:'\''.$key.'\'').'=>'.(is_numeric($value)?$value:'\''.$value.'\'').','; 
else echo ((is_numeric($key))?$key:'\''.$key.'\'').'=>'.(is_numeric($value)?$value:'\''.$value.'\''); 
} 
} 
echo '$'.$strName.'=array('; 
echoArr($data,''); 
echo ');'; 
echo "\n?>"; 
$file=fopen($strName.'.arr.php','w'); 
fwrite($file,ob_get_contents()); 
fclose($file); 
ob_clean(); 
return true; 
} 
?> 
<?php 
//存储数组 
$hello=array(1=>'test',2=>array('hello123')); 
cacheArr($hello); 
unset($hello); 
//读取数组 
require 'hello.arr.php'; 
print_r($hello); 
?>

测试的时候注意下变量问题。包括定义的全局变量
PHP 相关文章推荐
输出控制类
Oct 09 PHP
php下正则来匹配dede模板标签的代码
Aug 21 PHP
ThinkPHP采用模块和操作分析
Apr 18 PHP
通过php删除xml文档内容的方法
Jan 23 PHP
PHP使用正则表达式获取微博中的话题和对象名
Jul 18 PHP
php 利用array_slice函数获取随机数组或前几条数据
Sep 30 PHP
thinkphp框架下404页面设置 仅三步
May 14 PHP
php使用FFmpeg接口获取视频的播放时长、码率、缩略图以及创建时间
Nov 07 PHP
利用PHPStorm如何开发Laravel应用详解
Aug 30 PHP
弹出模态框modal的实现方法及实例
Sep 19 PHP
TP5框架实现签到功能的方法分析
Apr 05 PHP
php命令行模式代码实例详解
Feb 26 PHP
PHP取进制余数函数代码
Jan 19 #PHP
PHP采集腾讯微博的实现代码
Jan 19 #PHP
Php图像处理类代码分享
Jan 19 #PHP
调试一段PHP程序时遇到的三个问题
Jan 17 #PHP
php中可能用来加密字符串的函数[base64_encode、urlencode、sha1]
Jan 16 #PHP
PHP CURL模拟登录新浪微博抓取页面内容 基于EaglePHP框架开发
Jan 16 #PHP
php 阴历-农历-转换类代码
Jan 16 #PHP
You might like
php简单图像创建入门实例
2015/06/10 PHP
php数据访问之增删改查操作
2016/05/09 PHP
Thinkphp实现短信验证注册功能
2016/10/18 PHP
POST一个JSON格式的数据给Restful服务实例详解
2017/04/07 PHP
php中file_get_contents()函数用法实例
2019/02/21 PHP
laravel异步监控定时调度器实例详解
2019/06/21 PHP
PHP7 整型处理机制修改
2021/03/09 PHP
Jquery 表单取值赋值的一些基本操作
2009/10/11 Javascript
js跨域问题之跨域iframe自适应大小实现代码
2010/07/17 Javascript
Jquery实现弹出层分享微博插件具备动画效果
2013/04/03 Javascript
在javaScript中关于submit和button的区别介绍
2013/10/20 Javascript
javascript回车完美实现tab切换功能
2014/03/13 Javascript
JavaScript随机生成信用卡卡号的方法
2015/04/07 Javascript
JS中处理时间之setUTCMinutes()方法的使用
2015/06/12 Javascript
理解javascript中DOM事件
2015/12/25 Javascript
针对后台列表table拖拽比较实用的jquery拖动排序
2016/10/10 Javascript
关于Vue.js一些问题和思考学习笔记(2)
2016/12/02 Javascript
jQuery读取XML文件的方法示例
2017/02/03 Javascript
jQuery插件FusionCharts绘制的3D环饼图效果示例【附demo源码】
2017/04/02 jQuery
JS中的数组转变成JSON格式字符串的方法
2017/05/09 Javascript
jquery实现动态添加附件功能
2018/10/23 jQuery
vue+elementui通用弹窗的实现(新增+编辑)
2021/01/07 Vue.js
[02:02]DOTA2英雄基础教程 斯拉达
2013/12/11 DOTA
Python数据库的连接实现方法与注意事项
2016/02/27 Python
Django 多语言教程的实现(i18n)
2018/07/07 Python
python3利用Socket实现通信的方法示例
2019/05/06 Python
关于多元线性回归分析——Python&amp;SPSS
2020/02/24 Python
Manjaro、pip、conda更换国内源的方法
2020/11/17 Python
罗技英国官方网站:Logitech UK
2020/11/03 全球购物
四风问题对照检查材料整改措施
2014/09/27 职场文书
经典导游欢迎词
2015/01/26 职场文书
Python爬虫爬取全球疫情数据并存储到mysql数据库的步骤
2021/03/29 Python
Python中的min及返回最小值索引的操作
2021/05/10 Python
详解Laravel制作API接口
2021/05/31 PHP
python全面解析接口返回数据
2022/02/12 Python
win11高清晰音频管理器在哪里?win11找不到高清晰音频管理器解决办法
2022/04/08 数码科技