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 相关文章推荐
php 无限级 SelectTree 类
May 19 PHP
php关于array_multisort多维数组排序的使用说明
Jan 04 PHP
有关PHP中MVC的开发经验分享
May 17 PHP
php中is_null,empty,isset,unset 的区别详细介绍
Apr 28 PHP
PHP错误WARNING: SESSION_START() [FUNCTION.SESSION-START]解决方法
May 04 PHP
php实现用手机关闭计算机(电脑)的方法
Apr 22 PHP
PHP实现批量修改文件后缀名的方法
Jul 30 PHP
PHP面相对象中的重载与重写
Feb 13 PHP
php正则判断是否为合法身份证号的方法
Mar 16 PHP
浅谈laravel框架sql中groupBy之后排序的问题
Oct 17 PHP
PHP实现微信公众号验证Token的示例代码
Dec 16 PHP
浅谈如何提高PHP代码的质量
May 28 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 jpgraph库的配置及生成统计图表:折线图、柱状图、饼状图
2017/05/15 PHP
php多文件打包下载的实例代码
2017/07/12 PHP
基于jQuery的淡入淡出可自动切换的幻灯插件打包下载
2010/09/15 Javascript
JavaScript去掉数组中的重复元素
2011/01/13 Javascript
jquerydom对象的事件隐藏显示和对象数组示例
2013/12/10 Javascript
node.js+Ajax实现获取HTTP服务器返回数据
2014/11/26 Javascript
纯javascript实现分页(两种方法)
2015/08/26 Javascript
纯js实现倒计时功能
2017/01/06 Javascript
js中数组插入、删除元素操作的方法
2017/02/15 Javascript
jQuery实现遍历复选框的方法示例
2017/03/06 Javascript
微信小程序 动态传参实例详解
2017/04/27 Javascript
vue使用$emit时,父组件无法监听到子组件的事件实例
2018/02/26 Javascript
Vue兼容ie9的问题全面解决方案
2018/06/19 Javascript
Vue.js组件通信之自定义事件详解
2019/10/19 Javascript
深入了解JS之作用域和闭包
2020/06/16 Javascript
jQuery实现雪花飘落效果
2020/08/02 jQuery
vue3弹出层V3Popup实例详解
2021/01/04 Vue.js
[49:35]KG vs SECRET 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/19 DOTA
python操作MySQL数据库的方法分享
2012/05/29 Python
Python中除法使用的注意事项
2014/08/21 Python
Python利用pandas计算多个CSV文件数据值的实例
2018/04/19 Python
Python 根据日志级别打印不同颜色的日志的方法示例
2019/08/08 Python
pytorch的batch normalize使用详解
2020/01/15 Python
Python %r和%s区别代码实例解析
2020/04/03 Python
Python实现仿射密码的思路详解
2020/04/23 Python
增大python字体的方法步骤
2020/07/05 Python
Python 实现进度条的六种方式
2021/01/06 Python
PyCharm Ctrl+Shift+F 失灵的简单有效解决操作
2021/01/15 Python
HTML+CSS3 模仿Windows7 桌面效果
2010/06/17 HTML / CSS
浅谈h5自定义audio(问题及解决)
2016/08/19 HTML / CSS
法律专业自我鉴定
2013/10/03 职场文书
法制宣传月活动总结
2014/04/29 职场文书
2014年导购员工作总结
2014/11/18 职场文书
工作收入证明范本
2015/06/12 职场文书
2016年教师节慰问信
2015/12/01 职场文书
mysql 索引的数据结构为什么要采用B+树
2022/04/26 MySQL