Home > Database > Mysql Tutorial > body text

How to generate PHP array file from mysql data

藏色散人
Release: 2020-04-29 12:16:06
forward
2256 people have browsed it

实际上就是 php 将数组写入到一个文本文件或者后缀名为 .php 存储起来,使用的时候直接调用这个文件。

取mysql数据步骤忽略

(1)利用serialize将数组序列化存储为文本文件,调用时候再使用unserialize还原

$file='文件路径'; 
$array=array('s'=> array('aaa','bbb','ccc'),'d'=> array('111','222','222')); 
if(false!==fopen($file,'w+')){ 
  file_put_contents($file,serialize($array));
} 
$handle=fopen($file,'r'); 
$cacheArray=unserialize(fread($handle,filesize($file)));
Copy after login

(2)利用var_export将数组直接保存为数组形式存储到文本文件中(推荐使用)

$file='文件路径'; 
$array=array('s'=> array('aaa','bbb','ccc'),'d'=> array('111','222','222')); 
$text='
if(false!==fopen($file,'w+')){ 
  file_put_contents($file,$text); 
}else{ 
  echo '创建失败'; 
}
Copy after login

(3)自创的将数组保存为标准的数组格式,虽然保存时复杂了点但是调用时简单

$file='文件路径'; 
$array=array('s'=> array('aaa','bbb','ccc'),'d'=> array('111','222','222')); 
cache_write($file,$array,'rows',false); 
//写入 
function cache_write($filename,$values,$var='rows',$format=false){ 
  $cachefile=$filename; 
  $cachetext="
  return writefile($cachefile,$cachetext); 
}   
//数组转换成字串 
function arrayeval($array,$format=false,$level=0){ 
  $space=$line=''; 
  if(!$format){ 
    for($i=0;$i<=$level;$i++){ 
      $space.="\t"; 
    } 
    $line="\n"; 
  } 
  $evaluate=&#39;Array&#39;.$line.$space.&#39;(&#39;.$line; 
  $comma=$space; 
  foreach($array as $key=> $val){ 
    $key=is_string($key)?&#39;\&#39;&#39;.addcslashes($key,&#39;\&#39;\\&#39;).&#39;\&#39;&#39;:$key; 
    $val=!is_array($val)&&(!preg_match(&#39;/^\-?\d+$/&#39;,$val)||strlen($val) > 12)?&#39;\&#39;&#39;.addcslashes($val,&#39;\&#39;\\&#39;).&#39;\&#39;&#39;:$val; 
    if(is_array($val)){ 
      $evaluate.=$comma.$key.&#39;=>&#39;.arrayeval($val,$format,$level+1); 
    }else{ 
      $evaluate.=$comma.$key.&#39;=>&#39;.$val; 
    } 
    $comma=&#39;,&#39;.$line.$space; 
  } 
  $evaluate.=$line.$space.&#39;)&#39;; 
  return $evaluate; 
} 
//写入文件 
function writefile($filename,$writetext,$openmod=&#39;w&#39;){ 
  if(false!==$fp=fopen($filename,$openmod)){ 
    flock($fp,2); 
    fwrite($fp,$writetext); 
    fclose($fp); 
    return true; 
  }else{ 
    return false; 
  } }
Copy after login

相关推荐:《mysql视频教程

The above is the detailed content of How to generate PHP array file from mysql data. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:lmlyz.online
Statement of this Website
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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template