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 相关文章推荐
用Flash图形化数据(二)
Oct 09 PHP
php 删除记录实现代码
Mar 12 PHP
php中根据某年第几天计算出日期年月日的代码
Feb 24 PHP
php获取后台Job管理的实现代码
Jun 10 PHP
php使用curl模拟登录后采集页面的例子
Nov 04 PHP
Centos下升级php5.2到php5.4全记录(编译安装)
Apr 03 PHP
php实现在站点里面添加邮件发送的功能
Apr 28 PHP
PHP简单创建压缩图的方法
Aug 24 PHP
PHP使用星号替代用户名手机和邮箱的实现代码
Feb 07 PHP
php微信公众号开发之欢迎老朋友
Oct 20 PHP
PHP设计模式之抽象工厂模式实例分析
Mar 25 PHP
Laravel解决nesting level错误和隐藏index.php的问题
Oct 12 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.ini中date.timezone设置分析
2011/07/29 PHP
利用php+mcDropdown实现文件路径可在下拉框选择
2013/08/07 PHP
php 伪造ip以及url来路信息方法汇总
2014/11/25 PHP
CodeIgniter框架常见用法工作总结
2017/03/16 PHP
[原创]保存的js无法执行的解决办法
2007/02/25 Javascript
用jQuery扩展自写的 UI导航
2010/01/13 Javascript
在UpdatePanel内jquery easyui效果失效的解决方法
2010/04/11 Javascript
js 获取Listbox选择的值的代码
2010/04/15 Javascript
jquery中获取id值方法小结
2013/09/22 Javascript
js计算两个时间之间天数差的实例代码
2013/11/19 Javascript
判断在css加载完毕后执行后续代码示例
2014/09/03 Javascript
2014 HTML5/CSS3热门动画特效TOP10
2014/12/07 Javascript
Angular限制input框输入金额(是小数的话只保留两位小数点)
2017/07/13 Javascript
微信小程序之swiper滑动面板用法示例
2018/12/04 Javascript
webpack-mvc 传统多页面组件化开发详解
2019/05/07 Javascript
Python、Javascript中的闭包比较
2015/02/04 Python
pytorch cnn 识别手写的字实现自建图片数据
2018/05/20 Python
Python实现去除列表中重复元素的方法总结【7种方法】
2019/02/16 Python
详解pyinstaller selenium python3 chrome打包问题
2019/10/18 Python
python实现按首字母分类查找功能
2019/10/31 Python
tensorflow实现在函数中用tf.Print输出中间值
2020/01/21 Python
解决Python 写文件报错TypeError的问题
2020/10/23 Python
CSS3 实现侧边栏展开收起动画
2014/12/22 HTML / CSS
英国高档时尚男装购物网站:MR PORTER
2016/08/09 全球购物
澳大利亚在线购买儿童玩具:Toy Universe
2017/12/28 全球购物
戴尔荷兰官方网站:Dell荷兰
2020/10/04 全球购物
教师的实习鉴定
2013/12/15 职场文书
心得体会开头
2014/01/01 职场文书
秋天的图画教学反思
2014/05/01 职场文书
优秀家长事迹材料
2014/05/17 职场文书
商场促销活动总结
2014/07/10 职场文书
课堂打架检讨书200字
2014/11/21 职场文书
杨善洲观后感
2015/06/04 职场文书
蜗居观后感
2015/06/11 职场文书
2015七夕情人节宣传语
2015/07/14 职场文书
诚信高考倡议书
2019/06/24 职场文书