标签:效果 mod level evel sse cat style 写入 header
php 读取文本中数组,修改指定数组键值。达到统计下载文件排行。
<?php 
header("Content-type:text/html;charset=utf-8");
if(isset($_GET[‘down_id‘]) && !empty($_GET[‘down_id‘])){
	$down_id = $_GET[‘down_id‘];
	$file=‘down_id.php‘;
	$du = require_once($file);
	arsort($du);
	if (!isset($du[$down_id])){
		$du[$down_id]= ‘1‘;
		}else{
		$du[$down_id]=$du[$down_id]+1;
		}
	cache_write($file,$du,‘rows‘,false);
	Header("Location:$down_id");
   }else{
	echo ‘不存在!‘;
   }
//写入函数
function cache_write($filename,$values,$var=‘rows‘,$format=false){ 
  $cachefile=$filename; 
  $cachetext="<?php\r\n".‘return ‘.arrayeval($values,$format).";"; 
  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=‘Array (‘.‘   //自动排序‘.$line; 
  $comma=$space; 
  foreach($array as $key=> $val){ 
    $key=is_string($key)?‘\‘‘.addcslashes($key,‘\‘\\‘).‘\‘‘:$key; 
    $val=!is_array($val)&&(!preg_match(‘/^\-?\d+$/‘,$val)||strlen($val) > 12)?‘\‘‘.addcslashes($val,‘\‘\\‘).‘\‘‘:$val; 
    if(is_array($val)){ 
      $evaluate.=$comma.$key.‘ => ‘.arrayeval($val,$format,$level+1); 
    }else{ 
      $evaluate.=$comma.$key.‘ => ‘.$val; 
    } 
    $comma=‘,‘.$line.$space; 
  } 
  $evaluate.=$line.$space.‘)‘;
   return $evaluate; 
} 
//写入文件函数
function writefile($filename,$writetext,$openmod=‘w‘){ 
  if(false!==$fp=fopen($filename,$openmod)){ 
    flock($fp,2); 
    fwrite($fp,$writetext); 
    fclose($fp); 
    return true; 
  }else{ 
    return false; 
  } 
} 
 
效果为
<?php return Array ( //自动排序 ‘2345explorer.zip‘ => 21, ‘2345pcsafe.zip‘ => 13, ‘360sd_114448.exe‘ => 3, ‘u.exe‘ => 2, ‘tel.zip‘ => 2, ‘Adobe Flash Player ActiveX_23.0.0.185.exe‘ => 1, ‘360sd_x64_std_5.0.0.7033.exe‘ => 1, ‘360se 114448.exe‘ => 1, ‘360safe 114448.exe‘ => 1, ‘desktop.zip‘ => 1, ‘360sd_std_5.0.0.7033.exe‘ => 1, ‘Adobe Flash Player_NPAPI_23.0.0.185.exe‘ => 1, ‘u1603.exe‘ => 1 );
标签:效果 mod level evel sse cat style 写入 header
原文地址:http://www.cnblogs.com/zhouein/p/6480770.html