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 5.0对象模型深度探索之绑定
Sep 05 PHP
PHP 常见郁闷问题答解
Nov 25 PHP
七款最流行的PHP本地服务器分享
Feb 19 PHP
php设置编码格式的方法
Mar 05 PHP
慎用preg_replace危险的/e修饰符(一句话后门常用)
Jun 19 PHP
php addslashes 利用递归实现使用反斜线引用字符串
Aug 05 PHP
php导出excel格式数据问题
Mar 11 PHP
php cli配置文件问题分析
Oct 15 PHP
Android App中DrawerLayout抽屉效果的菜单编写实例
Mar 21 PHP
PHP仿微信多图片预览上传实例代码
Sep 13 PHP
浅谈Yii乐观锁的使用及原理
Jul 25 PHP
PHP中的自动加载操作实现方法详解
Aug 06 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 Cookie的使用教程详解
2013/06/03 PHP
PHP数组遍历知识汇总(包含遍历方法、数组指针操作函数、数组遍历测速)
2014/07/05 PHP
PHP实现的随机红包算法示例
2017/08/14 PHP
javascript的原生方法获取数组中的最大(最小)值
2012/12/19 Javascript
火狐下table中创建form导致两个table之间出现空白
2013/09/02 Javascript
JS、jquery实现几分钟前、几小时前、几天前等时间差显示效果的代码实例分享
2014/04/11 Javascript
jQuery插件slicebox实现3D动画图片轮播切换特效
2015/04/12 Javascript
confirm确认对话框的实现方法总结
2016/06/17 Javascript
BootStrap表单验证实例代码
2017/01/13 Javascript
利用Node.js编写跨平台的spawn语句详解
2017/02/12 Javascript
AngularJS基于factory创建自定义服务的方法详解
2017/05/25 Javascript
详谈js模块化规范
2017/07/07 Javascript
three.js 入门案例详解
2018/01/23 Javascript
vue超时计算的组件实例代码
2018/07/09 Javascript
快速解决angularJS中用post方法时后台拿不到值的问题
2018/08/14 Javascript
详解JavaScript作用域和作用域链
2019/03/19 Javascript
微信小程序实现发送模板消息功能示例【通过openid推送消息给用户】
2019/05/05 Javascript
微信小程序实现3D轮播图效果(非swiper组件)
2019/09/21 Javascript
通过vue.extend实现消息提示弹框的方法记录
2021/01/07 Vue.js
列举Python中吸引人的一些特性
2015/04/09 Python
python使用wmi模块获取windows下硬盘信息的方法
2015/05/15 Python
python 实时得到cpu和内存的使用情况方法
2018/06/11 Python
TensorFlow tensor的拼接实例
2020/01/19 Python
python zip,lambda,map函数代码实例
2020/04/04 Python
Window版下在Jupyter中编写TensorFlow的环境搭建
2020/04/10 Python
python破解同事的压缩包密码
2020/10/14 Python
SteelSeries赛睿官网:游戏外设和配件的领先制造商(耳机、键盘、鼠标和鼠标垫)
2018/06/17 全球购物
英国标准协会商店:BSI Shop
2019/02/25 全球购物
竞选学生会演讲稿
2014/04/25 职场文书
山东省召开党的群众路线教育实践活动总结大会新闻稿
2014/10/21 职场文书
黄石寨导游词
2015/02/05 职场文书
2015年九一八事变纪念活动实施方案
2015/05/06 职场文书
钢琴师观后感
2015/06/12 职场文书
MySQL CHAR和VARCHAR该如何选择
2021/05/31 MySQL
javascript拖曳互换div的位置实现示例
2021/06/28 Javascript
Tomcat配置访问日志和线程数
2022/05/06 Servers