Home >php教程 >php手册 >php数组存到文件的实现代码

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

WBOY
WBOYOriginal
2016-06-06 19:57:381008browse

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 php的数组十分强大,有些数据不存入数据库直接写到文件上,用的时候直接require 第一次分享代码;(写得很烂紧张纳紧张纳) (实际中有用到把数组存在到文件中的功能,不过分享的代码跟实际应用中的

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入

  php的数组十分强大,有些数据不存入数据库直接写到文件上,用的时候直接require

  第一次分享代码;(写得很烂紧张纳紧张纳)

  (实际中有用到把数组存在到文件中的功能,不过分享的代码跟实际应用中的有点不同)

  代码1:

  

  //数组转存为文件

  //by

  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 "

  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;

  }

  ?>

  代码2:

  

  //存储数组

  $hello=array(1=>'test',2=>array('hello123'));

  cacheArr($hello);

  unset($hello);

  //读取数组

  //by

  require 'hello.arr.php';

  print_r($hello);

  ?>

  测试的时候注意下变量问题。包括定义的全局变量。

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

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn