写了个队列函数 及 php 实现日志记录函数

2012年4月2日 发表评论 阅读评论

js文档地址:http://www.w3school.com.cn/js/js_events.asp

Array.prototype.cache_push = function ()
{
//alert(arguments.length);
   
if(arguments.length == 1)
    this[this.length] = arguments[0];
if(arguments.length == 2)
    this[arguments[0]] = arguments[1];

}

Array.prototype.cache_shift = function ()
{
var revalue,i;
for(i in this)
{
   if(this[i] === undefined || i == "cache_push" || i == "cache_shift") continue;
   revalue = this[i];
   if(isNaN(i))
    this.splice(i,1);
   else
    delete this[i];
   break;
}
return revalue;
}

var a = new Array();

a[0] = 333;
a.cache_push(‘dddd’);
a.cache_push("ddd",’dddd’);
a.cache_push(33,’aa’);

for(var i in a)
{
alert("pre="+ i);
}
//a.splice("33",1);
a.cache_shift()
for(var i in a)
{
alert("after="+ i);
}

有个问题:奇怪的是数组索引里有个"cache_shift"和"cache_push"函数,一直搞不明白。为这郁闷的调阿调阿,还是出不来。郁闷,还是没出来。。。。

那个高手知道,指点下。。。代码写的不好,还多请各位指教。。。

日志记录

<?php

function regester_record($sql,$mode)
{
$file = "record.log.php";
$backurl = urldecode($_GET['backurl']);
$str = "<?php exit(0);?>".date("Y-m-d H:i:s")."[".$mode."][from:".(empty($backurl)?$_SERVER['HTTP_HOST']:$backurl)."]\r\n";
if($_SERVER['REQUEST_METHOD'] == "GET")
{
   $str .= " _GET:";
   foreach($_GET as $k=>$v)
    $str .= "$k=$v|";
}
if($_SERVER['REQUEST_METHOD'] == "POST")
{
   $str .= "\r\n _POST:";
   foreach($_POST as $k=>$v)
    $str .= "$k=$v|";  
}
$str .= "\r\n".$sql;  
$str .= "\r\n———————————————–\r\n";

$fp = fopen($file,"r");
$log_line = fgets($fp);

//$log_contents = fread($fp,filesize($file));

//$log_contents =   $log_line.$log_contents;
fclose($fp);
unset($fp);
if(date("Y-m-d",strtotime("-1 month")) > substr($log_line,16,10))
{

//记录旧文件

// $fp = fopen("old-".$file,"w");

//fwrite($fp,$log_contents);

//fclose($fp);

//unset($fp);

//再次开始记录
   if($f = fopen($file,"w"))
   {
    fwrite($f,$str);
    fclose($f);
   }
}else
if($f = fopen($file,"a"))
{
   fwrite($f,$str);
   fclose($f);
}
}

?>


转载请注明来自:[MSN Spaces]http://msn.shandian.biz/236.html

  1. 本文目前尚无任何评论.